获取错误:
“插入 cur.execute(“INSERT INTO book VALUES(NULL,?,?,?,?)”,(标题,作者,年份,isbn)) sqlite3.OperationalError:表格书有4列,但提供了5个值“
在代码下面运行时,我希望在数据库中的表中插入数据时使用主键整数id列。
import sqlite3
def connect():
conn=sqlite3.connect("books.db")
cur=conn.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS book (id INTEGER PRIMARY KEY, title text, author text, year integer, isbn integer)")
conn.commit()
conn.close()
def insert(title,author,year,isbn):
conn=sqlite3.connect("books.db")
cur=conn.cursor()
cur.execute("INSERT INTO book VALUES (NULL,?,?,?,?)" ,(title,author,year,isbn))
conn.commit()
conn.close()
请帮忙。
答案 0 :(得分:0)
为什么要将NULL
放入book VALUES (NULL,?,?,?,?)
?尝试不使用NULL
cur.execute("INSERT INTO book VALUES (?,?,?,?)" ,(title,author,year,isbn))