使用「.import」指令無法將 CSV 檔案直接匯入 SQLite3 資料庫表。但是,這可以透過以下步驟來實現:
使用sqlite3 模組建立與資料庫的連線(記憶體資料庫或基於檔案的資料庫)資料庫):
import sqlite3 con = sqlite3.connect(":memory:") cur = con.cursor()
使用以下命令建立將儲存匯入資料的表「CREATE TABLE」語句,指定列名稱和資料類型:
cur.execute("CREATE TABLE t (col1, col2);")
開啟 CSV 檔案並使用 CSV 閱讀器讀取其內容。如果檔案的第一行指定了列名,您可以使用 csv.DictReader 將它們對應到字典:
with open('data.csv', 'r') as fin: dr = csv.DictReader(fin)
轉換字典將 CSV讀取器中的行插入元組列表:
to_db = [(i['col1'], i['col2']) for i in dr]
在遊標物件上使用executemany()方法將元組清單插入目標表中:
cur.executemany("INSERT INTO t (col1, col2) VALUES (?, ?);", to_db)
將更改提交到資料庫以使它們持久化:
con.commit()
最後關閉資料庫連接:
con.close()
以上是如何使用 Python 將 CSV 檔案匯入 SQLite3 資料庫表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!