使用Pyodbc插入Access 2016时的语法错误

时间:2019-05-27 17:23:47

标签: python sql python-3.x ms-access pyodbc

我正在使用Pyodbc,并试图将值显示为Microsoft 2016 Access数据库。但是,每次我运行代码时,我都会在执行行上得到一个错误:

  

回溯(最近通话最近):
    文件“ C:\ Users \ MEHRAN \ Desktop \ dp.py”,第5行,在       cursor.execute('从表名中选择*')   pyodbc。   ProgrammingError :(“ 42000”,“ [42000] [Microsoft] [ODBC Microsoft Access驱动程序] FROM子句中的语法错误。(-3506)(SQLExecDirectW)”)

import pyodbc

conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\MEHRAN\Desktop\testdb.accdb;')
cursor = conn.cursor()
cursor.execute('select * from table name')

for row in cursor.fetchall():
    print (row)

有人有解决此问题的想法吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您的表确实叫table name,那么您将需要用方括号将该名称括起来,以使其成为有效的Access SQL语法,例如:

cursor.execute('select * from [table name]')