Access数据库的插入语句错误

时间:2014-05-20 13:56:51

标签: ms-access python-3.x pypyodbc

我正在尝试使用python和pypyodbc将数据添加到数据库(MS Access)。 我已经在MS Access中测试了我的插入语句作为查询,它可以工作。问题是当我在程序中运行它时会出现以下错误:

pypyodbc.ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.')

我的插入语句如下所示:

INSERT INTO Database (columnAText,columnBText,columnText,columnDTime,columnEText,columnFText,columnGNumber) VALUES ('a','b','c','00:00:17','e','f','100')

请注意,列标题包含其类型作为其名称的一部分,因为这是一个测试表。

该计划如下:

列表中的列数多于insert语句,因为ID有一个自动增量列。这意味着必须在insert语句中定义列才能将数据提交到正确的列中。因此,如果某行具有null条目,则该插入语句中将缺少该列。

我看不出insert语句有什么问题,特别是因为它直接在MS Access中工作。

我在Windows 7计算机上使用ActivePython33和pypyodbc,MS Access 2010。

1 个答案:

答案 0 :(得分:0)

DATABASE是Access SQL中的reserved word,因此您需要将其括在方括号中:

INSERT INTO [Database] ...