CRUD significa Create, Read, Update, Delete. Es el conjunto de operaciones básicas que se realizan sobre una base de datos.
Usaremos la tabla customers con los siguientes campos principales:
import mysql.connector
def get_connection():
return mysql.connector.connect(
host="localhost",
user="root",
password="tu_password",
database="mi_base"
)
Esta función devuelve una conexión lista para usar en las operaciones CRUD.
def crear_customer(customerName, contactLastName, contactFirstName, phone, addressLine1, city, country):
conn = get_connection()
cursor = conn.cursor()
sql = """INSERT INTO customers
(customerName, contactLastName, contactFirstName, phone, addressLine1, city, country)
VALUES (%s, %s, %s, %s, %s, %s, %s)"""
values = (customerName, contactLastName, contactFirstName, phone, addressLine1, city, country)
cursor.execute(sql, values)
conn.commit()
last_id = cursor.lastrowid
cursor.close()
conn.close()
def obtener_customers():
conn = get_connection()
cursor = conn.cursor(dictionary=True)
cursor.execute("SELECT customerNumber, customerName, phone, country FROM customers")
rows = cursor.fetchall()
cursor.close()
conn.close()
return rows
Devuelve una lista de diccionarios con los datos de los clientes.
def actualizar_customer(customerNumber, phone, city):
conn = get_connection()
cursor = conn.cursor()
sql = "UPDATE customers SET phone=%s, city=%s WHERE customerNumber=%s"
values = (phone, city, customerNumber)
cursor.execute(sql, values)
conn.commit()
cursor.close()
conn.close()
def eliminar_customer(customerNumber):
conn = get_connection()
cursor = conn.cursor()
cursor.execute("DELETE FROM customers WHERE customerNumber = %s", (customerNumber,))
conn.commit()
cursor.close()
conn.close()
Este patrón CRUD es la base de la mayoría de aplicaciones web y APIs que trabajan con bases de datos.