Cómo insertar datos a MySQL desde Python - Hielo Creativo
Califica este contenido
[Total: 0 Promedio: 0]

Después de conectar Python con MySQL lo siguiente que necesitamos conocer, es la manera en como podemos insertar registros de datos hacia una tabla dentro de una base de datos, el principio inicial del CRUD que toda aplicación que requiera almacenar información debe realizar.

Preparativos iniciales con MySQL

Ya sea con una base de datos nueva o una existente, se puede comenzar. En este ejemplo, utilizaré phpMyAdmin, así que vamos a crear la base de datos. Entramos en el apartado Base de datos.

Creando una base de datos MySQL desde phpMyAdmin - Hielo Creativo

Establecemos el nombre de la base de datos y el cotejamiento que va a utilizar. Después presionamos el botón Crear.

Creando la base de datos en phpMyAdmin - Hielo Creativo

Vamos a utilizar una tabla para insertar datos. Establecemos el Nombre de la tabla, en el Número de columnas seleccionamos 4 y presionamos el botón Crear.

Creación de una tabla MySQL en phpMyAdmin - Hielo Creativo

Configuramos nuestra tabla de la siguiente manera. Al terminar, el botón Guardar se encuentra en la parte inferior de la página.

Columnas de la tabla MySQL - Hielo Creativo

Así es como debe quedar nuestra tabla:

Estructura de la tabla MySQL en phpMyAdmin - Hielo Creativo

Creando la conexión a la base de datos

En nuestro editor de código favorito, creamos un archivo llamado conectar.py para colocar el código de la conexión.

Creación de archivo Python en Codium - Hielo Creativo

El código para lograr la conexión a MySQL:

import mysql.connector
def abrir():
    usuario = "root"
    clave = ""
    base = "ejemplopython"
    servidor = "localhost"
    try:
        bd = mysql.connector.connect(
            host = servidor,
            user = usuario,
            password = clave,
            database = base
        )
        if bd.is_connected(): return bd
        else: return False
    except mysql.connector.Error as error:
        print(f"Error: {error}")
        return False

Quedando así:

Conectar Python con MySQL - Hielo Creativo

Creando el archivo Python para insertar datos

Ahora creamos un archivo para insertar los datos en nuestro editor de código favorito.

Archivo Python para insertar datos - Hielo Creativo

Primero hacemos un import hacia el archivo de la conexión.

import conectar

Luego, creamos un objeto con la conexión a la base de datos.

base = conectar.abrir()

Si ese objeto no se pudo crear, es decir, si es False, notificamos que no se pudo realizar la conexión.

if not base:
   print("No se pudo conectar")

De lo contrario:

else:

Creamos un cursor para ejecutar cadenas SQL.

cursor = base.cursor()

Preparamos los datos que vamos a insertar.

nombre = "Cloro 1 lt"
precio = 50.90
tipo = "Menudeo"

Escribimos la cadena SQL con el INSERT INTO necesario, reemplazando los datos por el comodín %s como argumento en la posición de cada columna.

sql = "INSERT INTO productos VALUES(NULL, %s, %s, %s)"

Creamos la lista de argumentos en el orden correcto, es decir, según como aparecen en la tabla.

args = (nombre, precio, tipo)

Usando el método execute del cursor, ejecutamos la cadena SQL con su lista de argumentos.

cursor.execute(sql, args)

Guardamos los cambios con el método commit de la base de datos.

base.commit()

Cerramos el cursor y la base de datos.

cursor.close()
base.close()

Y notificamos lo que acaba de suceder al usuario.

print("Registro insertado")

El código completo es como sigue:

import conectar
base = conectar.abrir()
if not base:
    print("No se pudo conectar")
else:
    cursor = base.cursor()
    nombre = "Cloro 1 lt"
    precio = 50.90
    tipo = "Menudeo"
    sql = "INSERT INTO productos VALUES(NULL, %s, %s, %s)"
    args = (nombre, precio, tipo)
    cursor.execute(sql, args)
    base.commit()
    cursor.close()
    base.close()
    print("Registro insertado")

Queda así:

Código Python para insertar datos en MySQL - Hielo Creativo

Insertando los datos de Python a MySQL

Presionamos el botón para ejecutar el código Python.

Ejecutar código Python - Hielo Creativo

Si todo sale bien, tendremos la siguiente salida en la terminal.

Registro insertado desde Python hacia MySQL - Hielo Creativo

Podemos corroborar en nuestro gestor si el registro se ha insertado.

Registro en una tabla MySQL desde phpMyAdmin - Hielo Creativo

Comentarios, dudas o preguntas

¡Y eso es todo! ¿Tuviste algún problema al intentarlo? ¿Tuviste que ejecutar algún comando adicional? No olvides dejar tus comentarios, dudas y / o preguntas. Con gusto las respondemos.

Califica este contenido
[Total: 0 Promedio: 0]

Entradas relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *