Dieser Fehler tritt auf, wenn ich versuche, einige Werte in eine Tabelle einzufügen. Hier ist mein Code:Einfügen von geordneten Dict-Werten bei der Verwendung von MySQL INSERT INTO
def tsx_insert(self, d_list):
for item in d_list:
query = """ INSERT IGNORE INTO tsx_first_insert(protocollo,procedura,oggetto,priorita,
tipo_richiesta,sottotipo_richiesta,emergenza,
richiesta,uo_richiedente,autore,scadenza_sla)
VALUES(%(protocollo)s,%(procedura)s,%(oggetto)s,%(priorita)s,%(tipo_richiesta)s,
%(sottotipo_richiesta)s,%(emergenza)s,%(richiesta)s,%(uo_richiedente)s,
%(autore)s,%(scadenza_sla)s)"""
values = item.values()
self.exec_query(query,values)
Und hier exec_query 'Funktion:
def exec_query(self, query, params):
try:
if self.connected is None:
self.connect()
self.cursor = self.connected.cursor()
self.cursor.connection.autocommit(True)
self.cursor.execute(query)
if self.cursor.description:
self.description = [d[0] for d in self.cursor.description]
self.rows = self.cursor.rowcount
self.sql_result = self.cursor.fetchall()
except MySQLdb.Error, e:
logging.error('Error {0}: {1}'.format(e.args[0], e.args[1]))
finally:
self.cursor.close()
Der Fehler ist: „Fehler 1064: Sie haben einen Fehler in der SQL-Syntax, kontrollieren das Handbuch, das entspricht Ihrer MariaDB Server-Version für die richtige Syntax bei '% (protocollo) s,% (procedura) s,% (oggetto) s,% (Priorita) s,% (tipo_richiesta) s, ' in Zeile 4"
zu verwendenIch kann nicht herausfinden, was das Problem ist. Vielen Dank im Voraus für Ihre Hilfe.
Sie links den wichtigsten Teil des Fehlers aus – e4c5
@ e4c5 Herausgegeben mit voller Fehlermeldung – echo
Es sieht nicht so aus, wie Sie in den Parametern sind Ersetzen ... – bernie