首頁 >後端開發 >Python教學 >如何使用 Python 將 CSV 檔案匯入 SQLite 資料庫表?

如何使用 Python 將 CSV 檔案匯入 SQLite 資料庫表?

Barbara Streisand
Barbara Streisand原創
2024-11-16 12:04:021026瀏覽

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

使用Python 將CSV 資料批次匯入SQLite

使用Python 的sqlite3 模組將CSV 檔案可以匯入一個簡單的過程表可以是一個簡單的流程表。但是,直接使用“.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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn