[英]Trouble filling MySQL table using Python
我正在嘗試將我作為 txt 文件的數據庫轉換為 MySQL 數據庫。 我找到了本教程並嘗試遵循它,但每次運行時都會出現錯誤:
mysql.connector.errors.ProgrammingError: 1054 (42S22): Unknown column 'Pdf' in 'field list'
這是我寫的代碼
import shutil
import os
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
database="Book"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE IF NOT EXISTS Books (name VARCHAR(255), address VARCHAR(255))")
if os.path.exists("/home/Me/Desktop/Books/INFO.txt"):
#Extract the data from the txt file
f= open("/home/Me/Desktop/Books/INFO.txt","r")
Lines = f.readlines()
Items=[]
for line in Lines:
line=line.replace("\n","")
Items_not_s=line.split(",")
Items_not_s=tuple(Items_not_s)
Items.append(Items_not_s)
#Extracted the data from the txt file
sql = "INSERT INTO Books (Name, Pdf, Image, DegradedImage, Tags, Extra) VALUES (%s, %s, %s, %s, %s, %s)"
val = Items
print(val[20])
mycursor.executemany(sql, val)
mydb.commit()
print(mycursor.rowcount, "was inserted.")
else:
print("no file")
我要放入表中的值 (val) 的示例是:
[('geekychefcookbook', '/home/Me/Desktop/Books/Food/Quarto Cookbooks/geekychefcookbook/PDF/PDF.pdf', 'None', '/home/Me/Desktop/Books/Food/Quarto Cookbooks/geekychefcookbook/IMAGE/IMAGE_RE.jpg', 'None', 'None'),('wickedgoodburgers', '/home/piotr/Desktop/Books/Food/Quarto Cookbooks/wickedgoodburgers/PDF/PDF.pdf', 'None', '/home/piotr/Desktop/Books/Food/Quarto Cookbooks/wickedgoodburgers/IMAGE/IMAGE_RE.jpg', 'None', 'None')]
提前致謝!
MYSQL 表沒有名為Pdf, Image, DegradedImage, Tags, Extra
的列,因為您正在嘗試插入。
您擁有的唯一列是name
和address
,如以下行中所定義:
mycursor.execute("CREATE TABLE IF NOT EXISTS Books (name VARCHAR(255), address VARCHAR(255))")
添加此行中的所有列(通過在address VARCHAR(255)
之后用逗號分隔它們及其特定數據類型,然后嘗試從文本文件中插入行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.