sql >> Base de Datos >  >> RDS >> Mysql

Insertar múltiples objetos de diccionario en una base de datos MySQL usando python y MySQLdb

No es necesario usar un generador para recorrer mydata . Solo pasa mydata directamente:

cur.executemany(sql, mydata)

El adaptador de base de datos recorrerá mydata para usted y una expresión generadora solo inserta un bucle extra innecesario.

Si no recibe ningún mensaje de error pero tampoco hay cambios, verifique lo siguiente:

  • Asegúrese de confirmar la transacción; ejecutar con.commit() después de .executemany() llamar.

  • Control triple que mydata no está vacío.

El adaptador de la base de datos manejará correctamente los valores flotantes por usted; si una columna está marcada como FLOAT NOT NULL y pasa un valor flotante de Python para esa columna, Things Just Work. Para eso están los parámetros SQL, manejar correctamente las cotizaciones de diferentes tipos de datos.