/ / Speichern eines JSON-Objekts als Zeichenfolge in einer SQL-Datenbank - Python, SQL, JSON, Escape

Wie man ein json-Objekt als String in der SQL-Datenbank speichert - python, sql, json, escape

Gibt es unter Verwendung von python, json und pyodbc eine Python-Funktion zum Speichern eines json-Objekts in einem Textfeld in einer SQL-Datenbank?

Beispielsweise:

cnxn = pyodbc.connect( MY CONNECTION STRING )
cursor = cnxn.cursor()
cursor.execute("UPDATE TABLE1 SET FIELD1 = "" + json.dumps(pythonDictionary) + "" WHERE FIELD2 = "some value"")

Ich bekomme immer einen Syntaxfehler, weil ich es nicht binWenn ich die speziellen Symbole im JSON-Objekt richtig maskiere, möchte ich einfach, dass der JSON-Dump in einen richtigen SQL-String konvertiert wird. Gibt es eine Funktion in Python, die das macht ?!

Antworten:

1 für die Antwort № 1

Anstatt sich selbst zu entziehen, sollten Sie nur parametrisierte Werte verwenden:

cursor.execute("UPDATE TABLE1 SET FIELD1 = ? WHERE FIELD2 = "some value"", (json.dumps(pythonDictionary)) )

Wie verwende ich Variablen in SQL-Anweisungen in Python?