Curso de python nivel medio
¿Qué es MySQL?
MySQL es un sistema de gestión de bases de datos relacional de código abierto muy popular. Es ampliamente utilizado en aplicaciones web para almacenar y manejar grandes volúmenes de datos.
¿Por qué usar MySQL con Python?
- Escalabilidad: MySQL es ideal para manejar grandes cantidades de datos y múltiples usuarios.
- Integración: Se integra bien con aplicaciones Python, especialmente en entornos web.
Conectarse a MySQL desde Python
Para conectarte a una base de datos MySQL desde Python, puedes usar el módulo mysql-connector-python. Si no lo tienes instalado, puedes instalarlo usando pip:
1pip install mysql-connector-python
Paso 1: Conectar a la base de datos
Primero, debes conectarte a la base de datos MySQL. Necesitarás conocer el host, nombre de usuario, contraseña y el nombre de la base de datos.
1import mysql.connector 2 3# Conectar a la base de datos MySQL 4conexion = mysql.connector.connect( 5 host="localhost", 6 user="tu_usuario", 7 password="tu_contraseña", 8 database="mi_base_de_datos" 9) 10 11# Crear un cursor para interactuar con la base de datos 12cursor = conexion.cursor() 13 14print("Conexión a la base de datos establecida.")
- ¿Qué hace este código?:
- Conecta a la base de datos MySQL utilizando las credenciales y el nombre de la base de datos.
- Crea un cursor para ejecutar comandos SQL.
- Resultado en pantalla:
Conexión a la base de datos establecida.
Paso 2: Crear una tabla
Después de conectarte a la base de datos, puedes crear una tabla para almacenar datos.
1# Crear una tabla llamada "usuarios" 2cursor.execute(""" 3CREATE TABLE IF NOT EXISTS usuarios ( 4 id INT AUTO_INCREMENT PRIMARY KEY, 5 nombre VARCHAR(100), 6 edad INT, 7 email VARCHAR(100) UNIQUE 8) 9""") 10 11print("Tabla 'usuarios' creada.")
- ¿Qué hace este código?:
- Crea una tabla llamada
usuarioscon columnas paraid,nombre,edadyemail. AUTO_INCREMENTenidhace que se incremente automáticamente.
- Crea una tabla llamada
- Resultado en pantalla:
Tabla 'usuarios' creada.
Paso 3: Insertar datos en la tabla
Ahora que la tabla está creada, puedes insertar datos en ella.
1# Insertar un nuevo usuario en la tabla 2cursor.execute(""" 3INSERT INTO usuarios (nombre, edad, email) 4VALUES (%s, %s, %s) 5""", ("Ana", 30, "ana@example.com")) 6 7# Confirmar la inserción de datos 8conexion.commit() 9 10print("Datos insertados en la tabla 'usuarios'.")
- ¿Qué hace este código?:
- Inserta un nuevo registro en la tabla
usuarios. commit()guarda los cambios en la base de datos.
- Inserta un nuevo registro en la tabla
- Resultado en pantalla:
Datos insertados en la tabla 'usuarios'.
Paso 4: Consultar datos
Puedes recuperar datos de la base de datos usando una consulta SQL.
1# Consultar todos los usuarios de la tabla 2cursor.execute("SELECT * FROM usuarios") 3usuarios = cursor.fetchall() 4 5# Mostrar los resultados 6print("Usuarios en la base de datos:") 7for usuario in usuarios: 8 print(usuario)
- ¿Qué hace este código?:
- Ejecuta una consulta SQL para seleccionar todos los registros de la tabla
usuarios. fetchall()obtiene todos los resultados de la consulta.- Muestra cada usuario en la base de datos.
- Ejecuta una consulta SQL para seleccionar todos los registros de la tabla
- Resultado en pantalla:
Usuarios en la base de datos: (1, 'Ana', 30, 'ana@example.com')
Paso 5: Actualizar y eliminar datos
También puedes actualizar y eliminar registros en la base de datos.
Actualizar datos
1# Actualizar la edad de un usuario 2cursor.execute(""" 3UPDATE usuarios 4SET edad = 31 5WHERE nombre = 'Ana' 6""") 7 8# Confirmar los cambios 9conexion.commit() 10 11print("Edad del usuario 'Ana' actualizada.")
- Resultado en pantalla:
Edad del usuario 'Ana' actualizada.
Eliminar datos
1# Eliminar un usuario de la tabla 2cursor.execute("DELETE FROM usuarios WHERE nombre = 'Ana'") 3 4# Confirmar los cambios 5conexion.commit() 6 7print("Usuario 'Ana' eliminado de la base de datos.")
- Resultado en pantalla:
Usuario 'Ana' eliminado de la base de datos.
Paso 6: Cerrar la conexión
Finalmente, siempre debes cerrar la conexión con la base de datos cuando termines de trabajar con ella.
1# Cerrar la conexión 2conexion.close() 3 4print("Conexión a la base de datos cerrada.")
- Resultado en pantalla:
Conexión a la base de datos cerrada.
Conclusión
MySQL es una herramienta poderosa y escalable para manejar bases de datos, y Python facilita la conexión y manipulación de datos en MySQL usando mysql-connector-python. Con estos ejemplos, puedes crear tablas, insertar, consultar, actualizar y eliminar datos en tu base de datos MySQL desde Python. ¡Practica estos pasos para dominar el uso de bases de datos en tus proyectos Python!
- Loading...