python-使用pyodbc将带有日期的数据上传到MS Access数据库
作者:互联网
我正在尝试使用Python中的pyodbc库将带有日期的数据插入MS Access.我的表有3个字段:日期(日期/时间),1Y(数字)和2Y(数字).我知道问题不是连接问题,因为我可以在没有“日期”字段的情况下成功插入.例如,这有效:
cursor.execute("insert into test(1Y,2Y) values (?,?)",'3','4')
现在包括日期,我已经尝试过:
cursor.execute("insert into test(Date,1Y,2Y) values (?,?,?)",'2010-01-01','3','4')
cursor.execute("insert into test(Date,1Y,2Y) values (?,?,?)",date(2010,1,1),'3','4')
cursor.execute("insert into test(Date,1Y,2Y) values (?,?,?)",'1/1/2010','3','4')
对于以上带有日期的示例,我收到以下错误:
ProgrammingError :(“ 42000”,“ [42000] [Microsoft] [ODBC Microsoft Access驱动程序] INSERT INTO语句中的语法错误.(-3502)(SQLExecDirectW)”)
我正在使用Python 2.7,MS Access 2013,pyodbc 2.7.谢谢.
解决方法:
要在Access SQL中使用reserved word这样的日期(例如Date)作为列或表的名称,必须将其括在方括号中,例如,
INSERT INTO TableName ([Date]) VALUES ...
标签:ms-access-2013,sql-insert,python,date,pyodbc 来源: https://codeday.me/bug/20191119/2033856.html