python将.db数据库文件转成Excel文档

python实现.db数据库转Excel

程序实现

上一篇文章程序实现以下功能:

1.读取一个Excel文件,文件名通过函数传参数传入

2.将文件读取的内容保存到一个数据库文件中

3.数据库的文件名以传入的Excel文件的文件名命名

4.将excel文件的工作簿的名字作为数据库的表单名

5.将Excel文件的第一行作为数据库的列命名

6.将Excel文件的每一个行的内容加入数据库中

这篇文章实现反方向转换的功能:

python 复制代码
import pandas as pd
import sqlite3
import sys

def sqlite_to_excel(db_file_name, excel_file_name):
    try:
        # 创建 SQLite 数据库连接
        conn = sqlite3.connect(db_file_name)

        # 获取数据库中的所有表格名称
        tables = pd.read_sql_query("SELECT name FROM sqlite_master WHERE type='table';", conn)['name'].tolist()

        # 创建 ExcelWriter 对象,用于写入 Excel 文件
        with pd.ExcelWriter(excel_file_name, engine='xlsxwriter') as writer:
            # 遍历所有表格,并将每个表格写入 Excel 文件的不同工作表
            for table_name in tables:
                query = f"SELECT * FROM {table_name};"
                df = pd.read_sql_query(query, conn)
                df.to_excel(writer, sheet_name=table_name, index=False)

        # 关闭数据库连接
        conn.close()

        print(f"成功将 SQLite 数据库 {db_file_name} 中的表格数据写入 Excel 文件 {excel_file_name}。")

    except Exception as e:
        print(f"发生错误: {e}")

if __name__ == "__main__":
    print("开始将 SQLite 数据库中的数据写入 Excel 文件。")
    # 用于测试的 SQLite 数据库文件名,传入的第一个参数
    db_file_name = sys.argv[1]
    # 用于保存 Excel 文件的文件名,传入的第二个参数
    excel_file_name = sys.argv[2]
    # 调用函数将数据库中的表格数据写入 Excel 文件
    sqlite_to_excel(db_file_name, excel_file_name)
相关推荐
2601_962293245 小时前
Python自动化统计团队工作量并生成可视化仪表盘的脚本方案【指导】
python·数据分析·自动化·可视化·仪表盘
2601_962293796 小时前
OCRmyPDF批处理脚本:使用Python自动化复杂OCR任务
python·自动化·批处理脚本·ocrmypdf·ocr任务
袋鼠云数栈7 小时前
实时湖仓如何真正做到“数据够新”?
大数据·数据库·人工智能·数据治理
ACP广源盛139246256737 小时前
M6/M5 Pro Mac mini 端侧 AI 落地@ACP#YLB3116 中端多盘存储扩展在 AI 服务中的机会与应用场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos
Java后端的Ai之路8 小时前
20、Python - 备忘录模式
开发语言·人工智能·python·外观模式·备忘录模式
ACP广源盛139246256738 小时前
M6/M5 Pro Mac mini 端侧 AI 新形态@ACP#GSV5800 Serdes 长距离视频传输在 AI 服务中的机会与落地场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos·音视频
2601_962077718 小时前
基于Python与NLP的新闻事件信息抽取实战:从NER到时空标准化
python·nlp·transformers·spacy·新闻事件抽取
JavaPub-rodert9 小时前
LangChain 从入门到 Agent 实战:用 Python 搭建一个真正能调用工具和知识库的 AI 助手
人工智能·python·langchain
郝学胜-神的一滴9 小时前
Qt 高级编程 045:坐标体系深度实战
开发语言·c++·windows·python·qt·程序人生
倔强的石头_10 小时前
事务边界与批量写入:避免长事务、锁等待和日志压力
数据库