我在使用Python編寫的語句時遇到問題到目前爲止我無法解決這個問題。Python準備好的語句。 SELECT in的問題
查詢,應執行的是例如:
SELECT md5 FROM software WHERE software_id IN (1, 2, 4)
於是,我就執行這樣的查詢:
software_id_string = "(2, 3, 4)"
cursor.execute("SELECT md5 FROM software WHERE software_id IN %s",
software_id_string)
的問題是,有'添加到字符串 - >'(2,3,4)',以便查詢將是:
SELECT md5 FROM software WHERE software_id IN ''(2, 3, 4)''
我也嘗試重建腳本,如下所示:
software_id_string = " 1 OR software_id = 2"
cursor.execute("SELECT md5 FROm software WHERE software_id = %s",
software_id_string)
這僅適用於第一個ID,該報告將提交(在這種情況下,1),因爲OR-部分不會被interpeted作爲SQL語句...
有什麼用預先準備好的陳述來解決問題的可能性?
這是一個很棒的主意!非常感謝你! – pmuens 2011-06-02 16:09:35