簡體   English   中英

如何從CSV文件插入sqlite數據庫?

[英]How to insert from CSV file into sqlite database?

我正在嘗試制作一個讀取 CSV 文件並將列插入數據庫的程序:

# import SQLite module 
import sqlite3
import csv

db = sqlite3.connect("shows.db")

# Setting up the cursor
cr = db.cursor()

# Create tabels and fields
cr.execute("CREATE TABLE IF NOT EXISTS shows (id INTEGER, title TEXT, PRIMARY KEY(id))")
cr.execute("CREATE TABLE IF NOT EXISTS genre (show_id INTEGER, genre TEXT, FOREIGN KEY(show_id) REFERENCES shows(id))")

# reading from file 
with open("Favorite TV Shows (Responses) - Form Responses 1.csv","r") as file:
    reader = csv.DictReader(file)
    for row in reader:
        title = row["title"].strip().upper()
        cr.execute(f"INSERT INTO shows (title) VALUES ('{title}')")

但是當我運行代碼時,會顯示此錯誤:

Traceback (most recent call last):
  File "lesson4.py", line 20, in <module>
    cr.execute(f"INSERT INTO shows (title) VALUES ('{title}')")
sqlite3.OperationalError: near "S": syntax error

應該是這樣的:

cr.execute("INSERT INTO shows (title) VALUES (%s)", (title,))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM