Código SQL:

-- Crear la base de datos
CREATE DATABASE ejemplo_db;

-- Usar la base de datos
USE ejemplo_db;

-- Crear la tabla estudiantes
CREATE TABLE estudiantes (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100),
    edad INT
);

Código Python:

Asegúrate de instalar el paquete necesario usando pip install mysql-connector-python.

import mysql.connector

# Conexión al servidor MySQL
conexion = mysql.connector.connect(
    host="localhost",       # Cambiar por tu host
    user="root",            # Cambiar por tu usuario
    password="tu_contraseña", # Cambiar por tu contraseña
    database="ejemplo_db"   # Base de datos creada
)

cursor = conexion.cursor()

# Insertar datos en la tabla
cursor.execute("INSERT INTO estudiantes (nombre, edad) VALUES (%s, %s)", ("Juan", 20))
cursor.execute("INSERT INTO estudiantes (nombre, edad) VALUES (%s, %s)", ("María", 22))
conexion.commit()

# Hacer una consulta básica
cursor.execute("SELECT * FROM estudiantes")
resultados = cursor.fetchall()

# Mostrar los resultados
for fila in resultados:
    print(f"ID: {fila[0]}, Nombre: {fila[1]}, Edad: {fila[2]}")

# Cerrar la conexión
cursor.close()
conexion.close()
  1. Insertar datos en la tabla desde una entrada del usuario.
import mysql.connector

# Conexión a la base de datos
conn = mysql.connector.connect(
    host="localhost",
    user="root",  # Cambiar por tu usuario
    password="password",  # Cambiar por tu contraseña
    database="test_db"  # Cambiar por tu base de datos
)

cursor = conn.cursor()

# Insertar datos
nombre = input("Ingresa el nombre del estudiante: ")
edad = int(input("Ingresa la edad: "))
cursor.execute("INSERT INTO estudiantes (nombre, edad) VALUES (%s, %s)", (nombre, edad))
conn.commit()
print("Datos insertados con éxito.")

# Consultar datos
cursor.execute("SELECT * FROM estudiantes")
for row in cursor.fetchall():
    print(row)

# Cerrar conexión
cursor.close()
conn.close()
  1. CRUD interactivo
import mysql.connector

# Conexión a la base de datos
conn = mysql.connector.connect(
    host="localhost",
    user="root",  # Cambia por tu usuario
    password="password",  # Cambia por tu contraseña
    database="test_db"  # Cambia por tu base de datos
)
cursor = conn.cursor()

# Funciones CRUD
def menu():
    while True:
        print("\n1. Insertar estudiante")
        print("2. Ver estudiantes")
        print("3. Actualizar estudiante")
        print("4. Eliminar estudiante")
        print("5. Salir")
        opcion = input("Elige una opción: ")

        if opcion == "1":
            insertar()
        elif opcion == "2":
            leer()
        elif opcion == "3":
            actualizar()
        elif opcion == "4":
            eliminar()
        elif opcion == "5":
            print("¡Saliendo del programa!")
            break
        else:
            print("Opción inválida. Intenta de nuevo.")

def insertar():
    nombre = input("Nombre: ")
    edad = int(input("Edad: "))
    query = "INSERT INTO estudiantes (nombre, edad) VALUES (%s, %s)"
    cursor.execute(query, (nombre, edad))
    conn.commit()
    print("Estudiante insertado con éxito.")

def leer():
    cursor.execute("SELECT * FROM estudiantes")
    registros = cursor.fetchall()
    print("\nEstudiantes registrados:")
    for registro in registros:
        print(f"ID: {registro[0]}, Nombre: {registro[1]}, Edad: {registro[2]}")

def actualizar():
    id_estudiante = int(input("ID del estudiante a actualizar: "))
    nuevo_nombre = input("Nuevo nombre: ")
    nueva_edad = int(input("Nueva edad: "))
    query = "UPDATE estudiantes SET nombre = %s, edad = %s WHERE id = %s"
    cursor.execute(query, (nuevo_nombre, nueva_edad, id_estudiante))
    conn.commit()
    print("Estudiante actualizado con éxito.")

def eliminar():
    id_estudiante = int(input("ID del estudiante a eliminar: "))
    query = "DELETE FROM estudiantes WHERE id = %s"
    cursor.execute(query, (id_estudiante,))
    conn.commit()
    print("Estudiante eliminado con éxito.")

# Ejecutar el menú
menu()

# Cerrar la conexión
cursor.close()
conn.close()