如何使用 Python 将 CSV 文件导入 SQLite 数据库表?

Barbara Streisand
发布: 2024-11-16 12:04:02
原创
954 人浏览过

How to Import a CSV File into a SQLite Database Table Using Python?

使用 Python 将 CSV 数据批量导入 SQLite

使用 Python 的 sqlite3 模块将 CSV 文件导入 SQLite 数据库表可以是一个简单的过程。但是,直接使用“.import”命令可能不会产生所需的结果,如最近的查询中所建议的。

要有效导入 CSV 文件,请考虑以下方法:

示例:

假设您当前工作目录中有一个名为“data.csv”的 CSV 文件,并且使用以下命令建立了数据库连接sqlite3.connect(),您可以使用以下步骤执行导入:

import csv, sqlite3

# Connect to the database
con = sqlite3.connect(":memory:") # or 'sqlite:///your_filename.db'

# Create a cursor
cur = con.cursor()

# Create the target table in advance
cur.execute("CREATE TABLE t (col1, col2);") # Adjust column names as needed

# Open the CSV file for reading
with open('data.csv','r') as fin:

    # Create a DictReader to read the header and rows as dictionaries
    # In case of a headerless file, skip the header argument
    dr = csv.DictReader(fin, delimiter=',')

    # Convert the rows into a list of tuples
    to_db = [(i['col1'], i['col2']) for i in dr]

# Use executemany to insert the data efficiently
cur.executemany("INSERT INTO t (col1, col2) VALUES (?, ?);", to_db)

# Commit the changes
con.commit()

# Close the connection
con.close()
登录后复制

此脚本假设您的 CSV 文件有两列名为“col1”和“col2”。如果您的文件具有不同的列名称,请在代码中相应地调整它们。成功执行后,CSV数据将导入到指定数据库中新创建的“t”表中。

以上是如何使用 Python 将 CSV 文件导入 SQLite 数据库表?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板