[英]How to insert value into a SQLite3 database in Python?
我有以下 function 將兩個值插入我的數據庫,但是,無論我嘗試多少次,數據都沒有插入。 newname 和 newgrade 在這個 function 中也成功獲取,只是沒有傳到數據庫中。
def addtolist():
with sqlite3.connect("TestScore.db") as db:
cursor = db.cursor()
newname = sname.get()
newgrade = sgrade.get()
cursor.execute("""INSERT INTO Scores(name,score) VALUES (?,?)""", (newname, newgrade))
db.commit
sname.delete(0, END)
sgrade.delete(0, END)
sname.focus()
我創建了如下數據庫
cursor.execute(""" CREATE TABLE IF NOT EXISTS Scores (id integer PRIMARY KEY, name text, score integer); """)
您需要將所有代碼縮進到with
塊內,並用括號調用commit()
function。 此外,您可能應該在完成插入值后關閉 cursor。
試試下面的代碼,看看它是否有效:
def addtolist():
with sqlite3.connect("TestScore.db") as db:
cursor = db.cursor()
newname = sname.get()
newgrade = sgrade.get()
cursor.execute("""INSERT INTO Scores(name,score) VALUES (?,?)""", (newname, newgrade))
db.commit()
sname.delete(0, END)
sgrade.delete(0, END)
sname.focus()
cursor.close()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.