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()
- 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()
- 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()