🔹 Introducción
Hasta ahora trabajamos con consultas sobre tablas ya creadas, como alumnos y profesores.
Pero en la vida real, antes de consultar datos necesitamos diseñar y crear las tablas de nuestra base de datos.
En esta lección vas a aprender a:
- Crear tablas nuevas con
CREATE TABLE. - Definir tipos de datos para cada columna.
- Modificar tablas existentes con
ALTER TABLE. - Agregar, renombrar o eliminar columnas.
👉 Esto es fundamental porque en SQL no solo consultamos datos, también diseñamos la estructura de la base.
🔹 Crear una tabla con CREATE TABLE
La sintaxis básica es:
CREATE TABLE nombre_tabla (
columna1 TIPO,
columna2 TIPO,
...
);
Ejemplo: vamos a crear una tabla de empleados.
CREATE TABLE empleados (
id INT,
nombre VARCHAR(50),
salario DECIMAL(10,2),
fecha_contratacion DATE
);
📊 Esto crea una tabla con 4 columnas:
id: número entero.nombre: texto de hasta 50 caracteres.salario: número con decimales (10 dígitos en total, 2 después del punto).fecha_contratacion: fecha.
🔹 Insertar datos en la nueva tabla
Probemos insertar algunos registros:
INSERT INTO empleados (id, nombre, salario, fecha_contratacion)
VALUES
(1, 'Marta', 2500.50, '2020-03-15'),
(2, 'Roberto', 3000.00, '2018-07-01'),
(3, 'Sofía', 2800.75, '2022-11-20');
Ahora si consultamos:
SELECT * FROM empleados;
👉 Resultado esperado:
| id | nombre | salario | fecha_contratacion |
|---|---|---|---|
| 1 | Marta | 2500.50 | 2020-03-15 |
| 2 | Roberto | 3000.00 | 2018-07-01 |
| 3 | Sofía | 2800.75 | 2022-11-20 |
🔹 Modificar tablas con ALTER TABLE
A veces necesitamos cambiar la estructura de una tabla después de crearla.
Para eso usamos ALTER TABLE.
1. Agregar una columna
ALTER TABLE empleados ADD COLUMN ciudad VARCHAR(50);
Ahora la tabla tiene una nueva columna ciudad.
Podemos actualizarla con:
UPDATE empleados SET ciudad = 'Madrid' WHERE id = 1;
UPDATE empleados SET ciudad = 'Barcelona' WHERE id = 2;
UPDATE empleados SET ciudad = 'Sevilla' WHERE id = 3;
👉 Resultado esperado:
| id | nombre | salario | fecha_contratacion | ciudad |
|---|---|---|---|---|
| 1 | Marta | 2500.50 | 2020-03-15 | Madrid |
| 2 | Roberto | 3000.00 | 2018-07-01 | Barcelona |
| 3 | Sofía | 2800.75 | 2022-11-20 | Sevilla |
2. Renombrar una columna
ALTER TABLE empleados RENAME COLUMN ciudad TO localidad;
Ahora la columna se llama localidad.
3. Eliminar una columna
ALTER TABLE empleados DROP COLUMN localidad;
⚠️ Ojo: esto borra la columna completa con todos sus datos.
4. Cambiar el tipo de dato de una columna
Ejemplo: aumentar la longitud de nombre a 100 caracteres.
ALTER TABLE empleados MODIFY COLUMN nombre VARCHAR(100);
🔹 Ejercicio práctico
- Crea una tabla llamada productos con las columnas:
id(INT)nombre(VARCHAR(50))precio(DECIMAL(10,2))stock(INT)
- Inserta al menos 3 productos con diferentes precios y stock.
- Agrega una columna
categoriaa la tablaproductos. - Cambia el nombre de la columna
precioaprecio_unitario. - Elimina la columna
stock.
🔹 Soluciones
-- 1. Crear tabla
CREATE TABLE productos (
id INT,
nombre VARCHAR(50),
precio DECIMAL(10,2),
stock INT
);
-- 2. Insertar registros
INSERT INTO productos (id, nombre, precio, stock)
VALUES
(1, 'Laptop', 1200.00, 10),
(2, 'Mouse', 25.50, 50),
(3, 'Teclado', 45.00, 30);
-- 3. Agregar columna
ALTER TABLE productos ADD COLUMN categoria VARCHAR(50);
-- 4. Renombrar columna
ALTER TABLE productos RENAME COLUMN precio TO precio_unitario;
-- 5. Eliminar columna
ALTER TABLE productos DROP COLUMN stock;
🔹 Mini Quiz
Resultados
#1. ¿Qué comando se usa para crear una tabla en SQL?
#2. ¿Qué hace ALTER TABLE empleados ADD COLUMN edad INT;?
#3. ¿Cuál es la diferencia entre DROP COLUMN y DROP TABLE?
🔹 Resumen de la lección
CREATE TABLEse usa para crear tablas nuevas.ALTER TABLEpermite agregar, modificar, renombrar o eliminar columnas.- Es importante planificar bien la estructura, pero siempre se puede ajustar después.
- Cuidado con
DROP COLUMNyDROP TABLEporque eliminan datos permanentemente.
👉 En la próxima lección aprenderás sobre claves y restricciones: cómo asegurar que los datos en tus tablas sean consistentes y sin duplicados.
💡 Si deseas profundizar en SQL, visita el índice general del Curso SQL gratuito.