在不同的数据库中运行相同的查

时间:2010-04-15 04:34:03

标签: ms-access

我写了一个我想在几个访问数据库中运行的查询。我有1000多个具有相同表(相同名称,相同字段)的访问数据库。到目前为止,我已经将此查询从txt文件手动复制到每个数据库的访问查询设计屏幕中的sql视图,然后运行它。我不需要更改查询语言 - 1000个数据库的一切都是相同的。有没有办法实现自动化?

1 个答案:

答案 0 :(得分:1)

您可以使用Python pyodbc module自动执行 这样的事情应该让你开始:

import pyodbc

def qry_ms_access(db, sql):
    conn = pyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb)};DBQ='+db, 
                          autocommit=True)
    c = conn.cursor()
    c.execute(sql)
    for row in c:
        print row.mycol

    c.close()
    conn.close()

if __name__ == "__main__":
    DBS = ['/path/to/MSAccessDb1.mdb', '/path/to/MSAccessDb2.mdb'] # etcetera

    sql = 'SELECT mycol FROM MyTable;'

    for db in DBS:
        qry_ms_access(db, sql)