我很难通过Python使用pyodbc将SQL插入到Access数据库中。每次尝试都会引发"无效的语法错误"。
import pyodbc
ney = 'data1'
soy = 'data2'
MDBA = 'C:/db/dbBase.mdb'; DRVA = '{Microsoft Access Driver (*.mdb)}'; PWDA = 'pw'
# connect to db
cona = pyodbc.connect('DRIVER={};DBQ={};PWD={}'.format(DRVA,MDBA,PWDA))
cura = cona.cursor()
SQL = ("""insert into [db1](col1, col2) values ('ney', 'soy')""")
#SQL = ("insert into db1(col1, col2values (?, ?)", ney, soy)
cura.execute(SQL)
cona.commit()
我能够做一个SELECT语句,那么INSERT的正确语法是什么?
答案 0 :(得分:1)
我只是将您的代码复制并粘贴到IDLE中,但它并没有给我带来错误。但是,它还插入了文字价值观' ney'和大豆'进入表格。要获取这些变量的值,您需要使用参数化查询,如下所示:
sql = "insert into [db1] (col1, col2) values (?, ?)"
params = (ney, soy) # tuple containing parameter values
cura.execute(sql, params)