中使用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'悄悄地返回。 –