簡體   English   中英

帶有多個變量的python SQLite3中的Update語句

[英]Update statement in python SQLite3 with several variables

所以我有以下陳述

cursor.execute("UPDATE IllnessTable SET (?) = (?) WHERE IllnessName = (?)",      
(self.SymptomName,self.IllnessStatus[ControlVar],CurrentIllnessName))

其中self.SymptomName是一個字符串,self.IllnessStatus [ControlVar]是一個整數,而CurrentIllnessName是一個字符串。 變量存在並且直接對應於我的表。 我想知道這個SQL語句本身有什么問題,因為我剛得到:

sqlite3.OperationalError: near "(": syntax error

您可以使用? 僅用於文字的占位符,不適用於列名之類的標識符。 使用編程語言中的字符串格式來生成帶有所需標識符的SQL。

另外,將?括起來 在原諒中是沒有必要的。

因此,更改為以下內容:

cursor.execute("UPDATE IllnessTable SET {} = ? WHERE IllnessName = ?".format(self.SymptomName),      
(self.IllnessStatus[ControlVar],CurrentIllnessName))

暫無
暫無

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

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