python sqlite3 从 excel 创建数据库

标签 python python-3.x sqlite

我正在尝试从 Excel 电子表格创建数据库。我有以下代码,问题是当我运行我的代码时,我的数据库为每一列创建了一个表。我想为工作簿中列出的每个电子表格创建一个表格。工作表名称为 sheet1 和 sheet2。

import sqlite3
import pandas as pd
filename="script"
con=sqlite3.connect(filename+".db")
wb=pd.read_excel(filename+'.xlsx',sheet_name='sheet1')
for sheet in wb:
wb[sheet].to_sql(sheet,con, index=False)
con.commit()
con.close()

最佳答案

传递 sheetname=None 将为您提供一个 OrderedDict,其中包含工作表名称的键和作为数据帧的值,然后您可以对其进行循环。

import pandas as pd
import sqlite3

db = sqlite3.connect(':memory:')
dfs = pd.read_excel('somefile.xlsx', sheet_name=None)
for table, df in dfs.items():
    df.to_sql(table, db)

关于python sqlite3 从 excel 创建数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46814200/

相关文章:

python - 使用 python 更新语句不适用于 sqlite3

c# - 内存中的 SQLite 和数据库消失

java - 我该如何解决 "cd: can' t cd to/data/data/package_name/databases 的错误?

python - 使用 format() 居中对齐并设置作为输入给出的精度

python - ZODB事务提交多次调用__getstate__

c++ - 如何在 Python 中实现 C++ 类,由 C++ 调用?

python - Python 中的星号三角形

python - 如何在 Python 中删除大量对象的重复项

javascript - Heroku ruby​​ Rails 4 与 heroku ExecJS::ProgramError: 意外的 token :错误

Python 字符串格式 - 类型错误 - 格式字符串参数不足