Estoy tratando de usar un dict
para hacer un SQL INSERT
. La lógica sería básicamente:Usando un dict de Python para una sentencia SQL INSERT
INSERT INTO table (dict.keys()) VALUES dict.values()
Sin embargo, estoy teniendo un tiempo difícil averiguar la sintaxis correcta/flujo para hacer esto. Esto es lo que tengo actualmente:
# data = {...}
sorted_column_headers_list = []
sorted_column_values_list = []
for k, v in data.items():
sorted_column_headers_list.append(k)
sorted_column_values_list.append(v)
sorted_column_headers_string = ', '.join(sorted_column_headers_list)
sorted_column_values_string = ', '.join(sorted_column_values_list)
cursor.execute("""INSERT INTO title (%s)
VALUES (%s)""",
(sorted_column_headers_string, sorted_column_values_string))
A partir de este recibo una excepción de SQL (creo relacionado con el hecho de que comas también están incluidos en algunos de los valores que tengo). ¿Cuál sería la forma correcta de hacer lo anterior?
Para MySQL: formato '= '' .join ([ '% s'] * len (datos)) ' – David542
fyi: esto no funcionó para mí, pero @furicle answer lo hizo – Tjorriemorrie