国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Verwenden von Variablen zum Ausführen von SQL-Anweisungen in Python
P粉731977554
P粉731977554 2023-10-12 15:06:00
0
2
837

Ich habe den folgenden Python-Code:

cursor.execute("INSERT INTO table VALUES var1, var2, var3,")

wobei var1 是整數(shù),var2var3 eine Zeichenfolge ist.

Wie schreibe ich Variablennamen (als Teil des Abfragetextes), ohne Python zu verwenden?

P粉731977554
P粉731977554

Antworte allen(2)
P粉718165540

Python DB-API 的不同實(shí)現(xiàn)允許使用不同的占位符,因此您需要找出您正在使用的占位符 - 可能是(例如使用 MySQLdb):

cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))

或(例如,使用 Python 標(biāo)準(zhǔn)庫(kù)中的 sqlite3):

cursor.execute("INSERT INTO table VALUES (?, ?, ?)", (var1, var2, var3))

或其他(在 VALUES 之后,您可以有 (:1, :2, :3) 或“命名樣式” (:fee, : fie, :fo)(%(fee)s, %(fie)s, %(fo)s) ,其中您將字典而不是映射作為第二個(gè)參數(shù)傳遞給執(zhí)行)。檢查您正在使用的 DB API 模塊中的 paramstyle 字符串常量,并在 http://www.python.org/dev/peps/pep-0249/ 查看所有參數(shù)傳遞樣式是什么!

P粉521697419
cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))

請(qǐng)注意,參數(shù)以元組形式傳遞,(a, b, c)。如果您傳遞單個(gè)參數(shù),則元組需要以逗號(hào)結(jié)尾,(a,)。

數(shù)據(jù)庫(kù) API 對(duì)變量進(jìn)行正確的轉(zhuǎn)義和引用。注意不要使用字符串格式化運(yùn)算符(%),因?yàn)?/p>

  1. 它不進(jìn)行任何轉(zhuǎn)義或引用。
  2. 很容易遭受不受控制的字符串格式攻擊,例如SQL_injection。
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage