CREATE TABLE en SQL
La sentencia
CREATE TABLE
en SQL crea una tabla nueva
con columnas y tipos de datos. Es DDL: define la estructura antes de insertar filas con
INSERT INTO
.
Esta lección trata DDL (definición de datos): cambiar la estructura de bases, tablas, índices o vistas. En producción, estas operaciones requieren permisos elevados y planificación.
Practica primero en entornos de prueba. Un DROP mal ejecutado puede ser irreversible sin copia de seguridad.
Sintaxis CREATE TABLE en SQL
La sintaxis indica el orden de argumentos y palabras clave. Copia la plantilla y sustituye nombres de columnas o literales entre comillas simples.
Plantilla
CREATE TABLE nombre_tabla (
columna1 TIPO PRIMARY KEY,
columna2 TIPO NOT NULL,
columna3 TIPO
);
CREATE TABLE e INSERT en SQL
Crea
Contactos_Demo
, inserta una fila y consulta el resultado:
CREATE TABLE + INSERT + SELECT
CREATE TABLE Contactos_Demo (
ID INTEGER PRIMARY KEY,
Nombre TEXT NOT NULL,
Ciudad TEXT
);
INSERT INTO Contactos_Demo (ID, Nombre, Ciudad)
VALUES (1, 'Laura Demo', 'Madrid');
SELECT * FROM Contactos_Demo;
Resultado: una fila con Laura Demo en Madrid.
| ID | Nombre | Ciudad |
|---|---|---|
| 1 | Laura Demo | Madrid |
Crear tabla a partir de un SELECT
En SQLite (y muchos motores) puedes copiar el resultado de una consulta en una tabla nueva:
Plantilla CREATE TABLE AS
CREATE TABLE nueva_tabla AS
SELECT columna1, columna2
FROM tabla_origen
WHERE condicion;
SELECT INTO en SQL Server
La sintaxis indica el orden de argumentos y palabras clave. Copia la plantilla y sustituye nombres de columnas o literales entre comillas simples.
Copia clientes de España
SELECT Nombre_Cliente, Ciudad, Pais
INTO Clientes_ES_Backup
FROM Clientes
WHERE Pais = 'España';
SELECT Nombre_Cliente, Ciudad
FROM Clientes_ES_Backup
ORDER BY Nombre_Cliente;
Resultado: cinco filas copiadas de Clientes .
| Nombre_Cliente | Ciudad |
|---|---|
| Ana García | Madrid |
| Carlos Ruiz | Madrid |
| Elena Torres | Sevilla |
| Luis Pérez | Barcelona |
| María López | Valencia |
Tabla demo Clientes para CREATE TABLE
Base de datos de demostración: Clientes
Estas filas son las mismas en la mayoría de ejemplos del tutorial. Referencia esta tabla cuando adaptes las consultas a tus propios datos.
| ID_Cliente | Nombre_Cliente | Ciudad | Pais | N_Ventas |
|---|---|---|---|---|
| 1 | Ana García | Madrid | España | 120 |
| 2 | Luis Pérez | Barcelona | España | 85 |
| 3 | María López | Valencia | España | 200 |
| 4 | Carlos Ruiz | Madrid | España | 45 |
| 5 | Elena Torres | Sevilla | España | 67 |
| 6 | John Smith | London | UK | 150 |
| 7 | Marie Dubois | Paris | Francia | 92 |
| 8 | Hans Müller | Berlin | Alemania | 78 |
| 9 | Luca Rossi | Roma | Italia | 110 |
| 10 | Sofia Anders | Stockholm | Suecia | 55 |
Resumen CREATE TABLE
-
CREATE TABLE (…)define columnas y tipos. -
INSERT INTOañade filas a la tabla creada. -
CREATE TABLE … AS SELECTcopia datos de otra consulta (equivalente SQLite de SELECT INTO en SQL Server). - Para eliminar la tabla entera (no solo filas): DROP TABLE .
Cómo practicar en el editor
1. Pulsa Pruébalo tú mismo en un ejemplo.
2. Cambia un filtro, columna o literal.
3. Ejecuta y compara el resultado con la tabla de ejemplo.
Comprueba lo aprendido
Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.