簡體   English   中英

如何將值插入到 Python 中的 SQLite3 數據庫中?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM