亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python mysql.connector - cursor.execute

Python mysql.connector - cursor.execute

呼啦一陣風 2021-09-11 15:36:42
我想使用 Flask 編寫登錄頁面,但是我從數據庫中獲取的用戶值始終是 NoneType。即使在登錄表單中輸入的用戶名與數據庫中的用戶名相同。我想我的 SQL 查詢可能有錯誤,但我不知道它在哪里。我感謝您的幫助!這是登錄函數,該函數應返回在數據庫中找到的行數。@app.route("/login", methods=["GET", "POST"])def login():    if request.method == "POST":        #get form fields        username = request.form["username"]        password_candidate = request.form["password"]        result = sqlhandler.mycursor.execute("SELECT * FROM users WHERE username = %s", [username])        print(result) #result is a NoneType這是 sqlhandler 的類:class mySQLHandler():    def __init__(self):        self.db = mysql.connector.connect(            host="localhost",            user="root",            passwd="notrealpassword ;)",            db="testdb"        )        self.mycursor = self.db.cursor()我真的很感激,如果有人能告訴我,為什么執行語句返回一個 NoneType。我已經檢查了 mycursor.execute() 中的代碼是否在 MySQL 工作臺中工作,并且確實如此。
查看完整描述

1 回答

?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

查詢執行和獲取分為兩個獨立的步驟。執行查詢后從游標中獲取數據:


sqlhandler.mycursor.execute("""

    SELECT * 

    FROM users 

    WHERE username = %s

""", [username])


data = sqlhandler.mycursor.fetchone()

print(data)

參考:



查看完整回答
反對 回復 2021-09-11
  • 1 回答
  • 0 關注
  • 342 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號