首页 > 解决方案 > 无法通过 pyodbc Python 连接 mdb VIEW 表

问题描述

我现在在使用 pyodbc 连接 mdb 文件中的 VIEW 表时遇到了困难。

当前代码如下:(以前的提供者:Microsoft.Jet.OLEDB.4.0)

import pyodbc
pyodbc.pooling = False

conn_str = (
    r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};'
    r'DBQ=C:***.mdb;'
    )
cnxn = pyodbc.connect(conn_str)
crsr = cnxn.cursor()

for table_info in crsr.tables(tableType='TABLE'):
    print(table_info.table_name)

strSQL = "SELECT A,B FROM tableC WHERE ** ORDER BY B"

crsr.execute(strSQL)

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

当它工作时,for table_info in crsr.tables(tableType='TABLE'):似乎没有问题。这是因为 print(table_info.table_name)显示了几个表名。

但是,crsr.execute(strSQL)完成后,出现异常错误并出现以下消息 ('HY000'、“[HY000] [Microsoft][ODBC Microsoft Access Driver] ODBC--连接到 'VIEW' 失败。(-2001) (SQLExecDirectW)”) 显示。

指导我如何克服这个问题将不胜感激。谢谢。

标签: pythonms-accessviewpyodbc

解决方案


推荐阅读