[英]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.