第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在 SQLite 中,如何使用輸入框中的文本搜索數(shù)據(jù)庫,并將結(jié)果顯示為文本?

在 SQLite 中,如何使用輸入框中的文本搜索數(shù)據(jù)庫,并將結(jié)果顯示為文本?

吃雞游戲 2023-06-27 18:00:58
我的搜索頁面上有一個輸入框。我希望此函數(shù)在我的數(shù)據(jù)庫中的表(電影)中搜索輸入到該條目框中的任何文本(列名稱為“標(biāo)題”),然后顯示結(jié)果。def search_now():    conn = sqlite3.connect('movie_catalog.db')    c = conn.cursor()    searched = search_box.get()    sql = "SELECT * FROM movies WHERE title = %s"    name = (searched, )    result = c.execute(sql, name)    if not result:        result = "Movie not found"    # Commit our changes    conn.commit()    # Close database connection    conn.close()我不斷收到以下錯誤消息:sqlite3.OperationalError: near "%": syntax error我一直在使用的教程是使用 MYSql,所以我不確定“%s”占位符是否適用。有任何想法嗎?
查看完整描述

1 回答

?
牧羊人nacy

TA貢獻1862條經(jīng)驗 獲得超7個贊

你應(yīng)該這樣做(不安全)


searched = search_box.get()

sql = "SELECT * FROM movies WHERE title = '%s'" % searched

result = c.execute(sql)

或這個(相當(dāng)安全地防止注射)


searched = search_box.get()

t = (searched,)

sql = "SELECT * FROM movies WHERE title=?"

result = c.execute(sql, t)

編輯:


在您的示例中,您將文字字符串傳遞SELECT * FROM movies WHERE title = '%s'"給數(shù)據(jù)庫,這就是它抱怨的原因%s


查看完整回答
反對 回復(fù) 2023-06-27
  • 1 回答
  • 0 關(guān)注
  • 201 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號