python:python_mysql
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
python:python_mysql [2011/09/20 13:13] – angelegt jenad | python:python_mysql [2024/08/07 13:39] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | == allgemeine Syntax == | + | ==== allgemeine Syntax |
- | <source lang="python"> | + | <code python> |
import MySQLdb | import MySQLdb | ||
conn=MySQLdb.connect(user=" | conn=MySQLdb.connect(user=" | ||
Zeile 8: | Zeile 8: | ||
allezeilen=curs.fetchall() | allezeilen=curs.fetchall() | ||
conn.close() | conn.close() | ||
- | </source> | + | </code> |
- | == MySQLdb: übergabe von parametern an cursor.execute() == | + | ==== MySQLdb: übergabe von parametern an cursor.execute() |
- | immer wieder ein Grund zum Verzweifeln, | ||
- | <source lang=" | ||
- | table=" | ||
- | cursor.execute(""" | ||
- | select * from %s where blabla = ' | ||
- | (table)) | ||
- | </ | ||
- | funzt nicht, aber dieses hier: | ||
- | <source lang=" | ||
- | table=" | ||
- | cursor.execute(""" | ||
- | select * from %s where blabla = ' | ||
- | table) | ||
- | </ | ||
- | Hier meine Erklärung: | + | <note important> |
- | + | ||
- | Der Komma-Operator | + | |
- | + | ||
- | Aus " | + | |
- | + | ||
- | <source lang=" | + | |
- | SELECT * from ' | + | |
- | </ | + | |
- | + | ||
- | ist eben ein ungültiger SQL-Befehl (Tabellenname in Hochkommas). | + | |
- | + | ||
- | Wenn man also auch den Tabellennamen | + | |
- | + | ||
- | <source lang=" | + | |
- | table=" | + | |
- | blabla=" | + | |
- | nummer=34 | + | |
- | cursor.execute(""" | + | |
- | select * from """ | + | |
- | (blabla, | + | |
- | </source> | + | |
- | + | ||
- | Es wird dabei IMMER der Operator %s benutzt, also auch bei Integer. | + | |
python/python_mysql.1316517216.txt.gz · Zuletzt geändert: 2024/08/07 13:35 (Externe Bearbeitung)