Python:将excel文件添加到访问数据库

Posted

技术标签:

【中文标题】Python:将excel文件添加到访问数据库【英文标题】:Python: Adding excel file to an access database 【发布时间】:2010-11-08 21:41:27 【问题描述】:

我正在使用 pyodbc 访问访问 (accdb) 文件。我想以编程方式将 excel 工作簿添加到 access 数据库中,但找不到执行此操作的 API。这是我当前的代码:

import pyodbc
DBFile = r'C:\Documents and Settings\IA.accdb'
conn = pyodbc.connect('DRIVER=Microsoft Access Driver (*.mdb, *.accdb);DBQ='+DBFile)

exFile = r'C:\Documents and Settings\IA_2006.xls'
conn1 = pyodbc.connect('DRIVER=Microsoft Excel Driver \ 
                       (*.xls);DBQ='+exFile,autocommit=True)

cursor = conn.cursor()
####IA_1 is a table within IA.accdb
cursor.execute('select * from IA_1')
row = cursor.fetchone()
####For debugging, print a line
if row:
        print row

我应该如何将excel文件(IA_2006.xls)中的数据导入到IA.accdb中?

【问题讨论】:

【参考方案1】:

您似乎到了某个点并放弃了。 不要放弃! :-)

您已经连接到 Excel 电子表格,现在您需要阅读它*。

curs1 = conn1.cursor()
# the following returns list of tuples
excel_results = curs1.execute('select [a_column]
                               from [Sheet1$]').fetchall()

然后您可以插入到您的 MS Access 数据库中,例如:

curs.executemany('insert into mytable (mycolumn) values (?)', excel_results)
conn.commit()

*如果有疑问,可以通过运行以下命令找到 Excel 工作表名称:

for row in curs1.tables():
    print row.table_name

【讨论】:

以上是关于Python:将excel文件添加到访问数据库的主要内容,如果未能解决你的问题,请参考以下文章

使用 Python 将数据从 MSSQL 导出到 Excel“模板”并以新名称保存

如何将 JSON **text** 写入 Excel 文件?

利用Python将excel数据读取到word表格

如何将数据从Excel电子表格导出到Sql Server 2008表

Python:将图像和数据帧写入同一个 excel 文件

如何使用python脚本自动将数据从访问中提取到excel中