Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So speichern Sie das Python-Wörterbuch über Python in der MySQL-Datenbank

Erstellen Sie niemals solche rohen SQL-Abfragen. Niemals. Dafür gibt es parametrisierte Abfragen. Sie haben nach einer SQL-Injektion gefragt Attacke.

Wenn Sie beliebige Daten speichern möchten, wie zum Beispiel Python-Wörterbücher, sollten Sie diese Daten serialisieren. JSON wäre eine gute Wahl für das Format.

Insgesamt sollte Ihr Code so aussehen:

import MySQLdb
import json

db = MySQLdb.connect(...)    
cursor = db.cursor() 

dic = {'office': {'component_office': ['Word2010SP0', 'PowerPoint2010SP0']}}
sql = "INSERT INTO ep_soft(ip_address, soft_data) VALUES (%s, %s)"

cursor.execute(sql, ("192.xxx.xx.xx", json.dumps(dic)))
cursor.commit()