每当我运行程序时,我都会收到此错误。
Traceback (most recent call last):
File "C:/Users/Shepard/Desktop/Gradebook.py", line 51, in <module>
qs.CreateDb()
File "C:/Users/Shepard/Desktop/Gradebook.py", line 14, in CreateDb
self.cursor.exeute(query)
AttributeError: 'sqlite3.Cursor' object has no attribute 'exeute'
这使我相信我的问题在于:
def CreateDb(self):
query = """CREATE TABLE questions
(id INTEGER PRIMARY KEY, Question TEXT, Answer1 TEXT, Answer2 TEXT, Answer3 TEXT, Answer4 TEXT, CorrectAnswer TEXT)"""
self.cursor.exeute(query)
self.connection.commit()
self.cursor.close()
或者在
中def AddQuestion(self, Question, Answer1, Answer2, Answer3, Answer4):
self.cursor.execute("""INSERT INTO questions
VALUES (?, ?, ?, ?, ?, ?)""", [None, Question, Answer1, Answer2, Answer3, Answer4, CorrectAnswer])
self.connection.commit()
'execute'不是有效属性吗?如果是这样,我应该使用什么?我在这一点上有点过头了。 :P
答案 0 :(得分:9)
它没有说“执行”它说“执行”。你把它拼错了。
答案 1 :(得分:1)
你的CreateDB函数中有'execute'字样,
self.cursor.exeute(query)
它应该是'执行'。我犯了同样的错误。
答案 2 :(得分:0)
这将为您显示连接和光标的可能命令:
print("Connection functions:",dir(sqlite3.connect('::memory::')))
print("\n\n")
print("Cursor functions:",dir(sqlite3.connect('::memory::').cursor()))
请检查是否拼写正确,并且不要混淆连接和光标。