簡體   English   中英

從 MySQL 獲取數據並從 Python 更新

[英]Fetching data from MySQL and updating from Python

我是編碼新手,我在數據庫“World”中有一個名為“Capitals”的表。 該表有 3 列,即“問題”、“答案”和“分數”。 (問題列有國家名稱,答案列有那個國家的首都)最初所有列都有點=0

我想將這些數據一一獲取到 python 及其 GUI(Tkinter),如果學生/用戶告訴該國的首都,我想在“積分”上加 1 分。 我能夠通過以下代碼獲取 python 的問題和答案:

從 python 與數據庫建立連接沒有問題。 獲取問題和答案沒有問題。

    ```
    X=0
    sql2 = "SELECT Questions FROM Capitals"

    mycursor.execute(sql2)
    myresult1 = mycursor.fetchall()
    print(myresult1[x])
    mydb.commit()

    ```

我有一個 tkinter GUI,它有一個名為“SHOW”的按鈕,當我點擊它時,答案是從以下代碼中獲取的。

    ```
    sql3 = "SELECT Answers FROM Capitals"

    mycursor.execute(sql3)
    myresult1 = mycursor.fetchall()
    print(myresult1[x])
    mydb.commit()

    ```

我有一個名為“NEXT”的 GUI 按鈕,其命令類似於“x=x+1”,以便我從數據庫中獲取下一個問題,直到此代碼運行順利,但如果我想更新 1 標記以獲得正確答案,則代碼不會必須將Z9778840A0A0A0100CB30C982876741B0B5A2Z查詢的“ where”條款指向數據庫中的特定行,這是“''whene'whene“其中”條款不可以讀取ZC1C1C1C1C425268EIS案例IS案例, 我使用的代碼是

    ```
    Sql4="SELECT * FROM Capitals WHERE Questions=myresult1[x]"

    ```

我的問題是如何遍歷 SQL 的“WHERE”子句。請幫忙

更改Sql4以使用占位符作為值:

Sql4="SELECT * FROM Capitals WHERE Questions=%s"

然后像這樣執行它:

mycursor.execute(Sql4, (myresult1[x],))

將元組中的myresult1[x]傳遞給execute()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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