Python 3.6.4 ODBC Filemaker ProgrammingError:查询的语法有错误

时间:2018-02-06 13:43:42

标签: python sql odbc filemaker

嗨我在Windows 10上使用python通过ODBC在filemaker中读取和更新字段时遇到了一些问题。

我可以绝对正常地连接到数据库,当我在没有SQL的情况下运行python文件时我没有错误但是由于某种原因我的查询不想执行。

import pyodbc
Id = '108989'
cstring = "DSN=DB;UID=admin;PWD=password;Trusted_Connection=yes"
con = pyodbc.connect(cstring)
cur = con.cursor()
rows = cur.execute("""UPDATE ACTIVE SET stage='Trans' WHERE __ID=?""",(Id))
del cur, con
print(rows)

我得到的错误是:

  

追踪(最近一次通话):     文件“C:/ Users / User / Desktop / _FM TEST / fmtest.py”,第17行,in       rows = cur.execute(“”“UPDATE ACTIVE SET stage ='Trans'WHERE__ID =?”“”,(Id))   pyodbc.ProgrammingError:('42000','[42000] [FileMaker] [FileMaker] FQL0001 /(1:51):查询语法有错误。\ x00 \ x00ଈ\ x9d(\ x00 \x02ȀᙙȀᙙ㾾脀\ X00 \x00Ɗ谋\ X00 \ X00 \ X00(\ X00 \x02Ȁ\ X00 \ X00㾾脀\ X02 \ X00 \ X00 \ueda8Þ⪿瞚㍍瞚뒧ꤞȰ\ X00 \ X00 \uedf8Þ\ X00 \uee00Þ\ x8c \ x00샐\ uffff \ x8e \ x00ƣ둧ꤞ\ ue760 \ u0558 \ x00ˡ\ ue768 \ u0558Ɗ谋타ဓ槔ˡ(\ x00 \x02Ȁ(\ x00㾾脀\ x02 \x00Ɗ谋(8310)(SQLPrepare)')

我刚从另一个类似的数据库转移到这个数据库,工作正常。任何帮助都会非常感激。

谢谢

1 个答案:

答案 0 :(得分:1)

确保在转义引号中包含以特殊字符开头的列名,如下所示:

  

\ “__ ID \”