python
  • ms-access
  • dictionary
  • 2015-05-11 78 views 0 likes 
    0

    我已经能够将来自python的记录插入ms访问数据库,但无法将其读回Python。我要求它的格式是Python中的Dictionarys列表。将数据从ms访问导入Python作为字典列表

    到目前为止,我已经尝试使用pyodbc做到这一点用下面的代码;

    db_path = ("path/tomy/db/mine.mdb") 
    odbc_connection_str = 'DRIVER={Microsoft Access Driver (*.mdb)};DBQ=%s;' % (db_path) 
    connection = pyodbc.connect(odbc_connection_str) 
    cursor = connection.cursor() 
    

    然后我尝试了以下,但我得到一个没有读取权限的错误。

    query = "SELECT * FROM MSysObjects WHERE Type=1 AND Flags=0" 
    cursor.execute(query) 
    rows = cursor.fetchall() 
    for row in rows: 
        print row 
    

    任何人都有从MS访问数据库提取经验,然后能够将它存储在python作为一个字典列表?

    回答

    1

    解决“没有读取权限错误”,你需要将权限授予该系统表的解释在这里:

    Record cannot be read; no read permission on 'MSysObjects'

    至于返回查询结果词典列表,你可以找到这里的解决方案:

    Output pyodbc cursor results as python dictionary

    相关问题