中使用sqlite3,並得到這個錯誤:sqlite3.OperationalError:沒有這樣的列:今年
sqlite3.OperationalError: no such column: year
SQLite3的新手在這裏。 真的很困惑,現在,以什麼代碼的一部分了錯誤...
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 search(title="",author="",year="",isbn=""):
conn=sqlite3.connect("books.db")
cur=conn.cursor()
cur.execute("SELECT * FROM book WHERE title=? OR author=? OR year=? OR isbn=?",(title,author,year,isbn))
rows=cur.fetchall()
conn.close()
return rows
connect()
print(search(year=1918))
任何幫助,將不勝感激,謝謝!
有一個想法:也許沒有這樣的列,因爲你已經創建了表,在你沒有該列的代碼的早期版本中,所以'CREATE TABLE IF NOT EXISTS'悄悄地返回。 –