Microsoft Access 数据库引擎找不到输入表或查询
Posted
技术标签:
【中文标题】Microsoft Access 数据库引擎找不到输入表或查询【英文标题】:Microsoft Access database engine cannot find the input table or query 【发布时间】:2020-12-11 12:00:38 【问题描述】:我正在尝试与 Microsoft Office 建立连接并运行查询,但它显示错误
这是我的代码:
import pyodbc
conn = pyodbc.connect(r'DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ=E:\Python\Database\att2000.accdb;')
cursor = conn.cursor()
cursor.execute("SELECT CHECKINOUT FROM att2000 Where CHECKTYPE = O")
for row in cursor.fetchall():
print (row)
这是错误:
Error is occurring while executing the query
----> 5 cursor.execute("SELECT CHECKINOUT FROM att2000 Where CHECKTYPE = O")
6
7 for row in cursor.fetchall():
ProgrammingError: ('42S02', "[42S02] [Microsoft][ODBC Microsoft Access Driver] The Microsoft Access database engine cannot find the input table or query 'att2000'. Make sure it exists and that its name is spelled correctly. (-1305) (SQLExecDirectW)")
【问题讨论】:
att2000
是数据库文件的名称。显然,它不包含同样名为att2000
的表或视图。在 Microsoft Access UI 中打开数据库并验证表/视图名称是什么。
【参考方案1】:
我猜你混淆了文件名和表名。
试试:
cursor.execute("Select * From CHECKINOUT Where CHECKTYPE = O")
【讨论】:
以上是关于Microsoft Access 数据库引擎找不到输入表或查询的主要内容,如果未能解决你的问题,请参考以下文章
JSP - Microsoft ODBC - Microsoft Access 驱动程序找不到文件“(未知)”
Microsoft Access 错误找不到 .mdb 但数据库是 .accdb
Microsoft Jet 数据库引擎找不到对象“....”