¡Bienvenido a la Guía de MySQL!

MySQL es un sistema de gestión de bases de datos relacional de código abierto, muy popular y ampliamente utilizado en aplicaciones web. 🚀 Con MySQL, puedes almacenar, organizar y gestionar grandes cantidades de datos de manera eficiente. 🌟 ¡Es una herramienta esencial para cualquier desarrollador que trabaje con bases de datos! 💻

Introducción a MySQL

MySQL es un sistema de gestión de bases de datos relacionales de código abierto, ampliamente utilizado en aplicaciones web y empresariales. Aquí tienes un ejemplo básico de cómo conectarse a una base de datos MySQL:

Ejemplo de Conexión a MySQL
import mysql.connector

# Conectar a la base de datos
conexion = mysql.connector.connect(
    host="localhost",
    user="usuario",
    password="contraseña",
    database="nombre_de_la_base_de_datos"
)

# Crear un cursor para ejecutar consultas
cursor = conexion.cursor()

# Ejecutar una consulta
cursor.execute("SELECT * FROM tabla")

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

Creación de Bases de Datos y Tablas

En MySQL, puedes crear bases de datos y tablas usando comandos SQL. Aquí tienes un ejemplo de cómo crear una base de datos y una tabla:

Ejemplo de Creación de Base de Datos y Tabla
CREATE DATABASE mi_base_de_datos;

USE mi_base_de_datos;

CREATE TABLE usuarios (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL,
    fecha_registro TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Consultas SQL Básicas

Las consultas SQL básicas permiten realizar operaciones como seleccionar, insertar, actualizar y eliminar datos. Aquí tienes ejemplos de cada una:

Ejemplo de Consultas SQL
-- Seleccionar todos los registros de una tabla
SELECT * FROM usuarios;

-- Insertar un nuevo registro
INSERT INTO usuarios (nombre, email) VALUES ('Juan', 'juan@example.com');

-- Actualizar un registro
UPDATE usuarios SET email = 'juan.nuevo@example.com' WHERE id = 1;

-- Eliminar un registro
DELETE FROM usuarios WHERE id = 1;

Operaciones CRUD

Las operaciones CRUD (Crear, Leer, Actualizar, Eliminar) son fundamentales en el manejo de bases de datos. Aquí tienes un ejemplo de cómo realizar estas operaciones en MySQL:

Ejemplo de Operaciones CRUD
-- Crear (Insertar)
INSERT INTO usuarios (nombre, email) VALUES ('Ana', 'ana@example.com');

-- Leer (Seleccionar)
SELECT * FROM usuarios WHERE nombre = 'Ana';

-- Actualizar
UPDATE usuarios SET email = 'ana.nuevo@example.com' WHERE nombre = 'Ana';

-- Eliminar
DELETE FROM usuarios WHERE nombre = 'Ana';

Consultas Avanzadas

Las consultas avanzadas permiten realizar operaciones más complejas, como unir tablas, agrupar datos y ordenar resultados. Aquí tienes ejemplos de consultas avanzadas:

Ejemplo de Consultas Avanzadas
-- JOIN (Unir tablas)
SELECT usuarios.nombre, pedidos.producto
FROM usuarios
JOIN pedidos ON usuarios.id = pedidos.usuario_id;

-- GROUP BY (Agrupar datos)
SELECT COUNT(*) AS total_usuarios, pais
FROM usuarios
GROUP BY pais;

-- ORDER BY (Ordenar resultados)
SELECT * FROM usuarios
ORDER BY fecha_registro DESC;

Manejo de Índices y Claves

Los índices y claves mejoran el rendimiento de las consultas y aseguran la integridad de los datos. Aquí tienes un ejemplo de cómo crear índices y claves:

Ejemplo de Índices y Claves
-- Crear un índice
CREATE INDEX idx_nombre ON usuarios (nombre);

-- Crear una clave primaria
ALTER TABLE usuarios ADD PRIMARY KEY (id);

-- Crear una clave foránea
ALTER TABLE pedidos
ADD CONSTRAINT fk_usuario
FOREIGN KEY (usuario_id) REFERENCES usuarios(id);

Ejercicios Prácticos

Aquí tienes algunos ejercicios para practicar tus habilidades en MySQL:

Ejercicio 1: Crear una Base de Datos

Crea una base de datos llamada biblioteca y una tabla llamada libros con columnas para el título, autor y año de publicación.

Ejercicio 2: Consultas Básicas

Escribe una consulta para seleccionar todos los libros publicados después del año 2000.

Ejercicio 3: Consultas Avanzadas

Escribe una consulta que muestre el número de libros por autor, ordenados de mayor a menor.