Al terminar, podrás
- Traducir atributos a definiciones de columna.
- Elegir tipos según los valores esperados.
- Escribir y revisar una sentencia CREATE TABLE.
Recupera lo aprendido: ¿Cuál es la diferencia entre crear una estructura y añadir una fila a esa estructura?
La idea clave
CREATE TABLE convierte un modelo de datos en una estructura. Cada definición de columna responde tres preguntas: cómo se llama, qué tipo de valor espera y qué reglas debe cumplir.
Primero modela, después escribe SQL: una tabla clara nace de ejemplos reales de filas, no de elegir tipos al azar.
La sintaxis básica
CREATE TABLE nombre_tabla (
columna1 tipo,
columna2 tipo
);Elige el tipo a partir de un ejemplo
Si necesitas comparar precios, texto, fechas y booleanos entre motores, consulta la guía de tipos de datos SQL antes de definir las columnas.
INTEGER: cantidades enteras, como 12 horas.VARCHAR(120)oTEXT: texto, como un título. Los límites dependen del motor.- Fechas: usa el tipo y las funciones del motor. En los datos del laboratorio se guardan como texto
YYYY-MM-DD.
Compatibilidad: longitud de texto e importes
SQLite no impone el límite de VARCHAR(120). No confundas declarar el tipo con validar la longitud. Para importes exactos, otros motores ofrecen tipos como DECIMAL; en SQLite puede ser útil guardar céntimos enteros. Los importes REAL del curso simplifican la práctica y pueden tener pequeñas diferencias de precisión.
Ejemplo paso a paso
Una tabla de proveedores necesita un identificador numérico y dos datos de texto. Las restricciones se estudiarán en la lección siguiente; aquí observamos la forma básica.
CREATE TABLE proveedores (
id INTEGER,
nombre VARCHAR(120),
ciudad VARCHAR(80)
);| columna | tipo declarado |
|---|---|
| id | INTEGER |
| nombre | VARCHAR(120) |
| ciudad | VARCHAR(80) |
Cómo funciona
- El nombre de la tabla aparece una sola vez después de
CREATE TABLE. - Las columnas se separan con comas dentro de los paréntesis.
- El punto y coma cierra la sentencia completa.
Un error habitual
Olvidar las comas entre definiciones
CREATE TABLE proveedores (
id INTEGER
nombre VARCHAR(120)
ciudad VARCHAR(80)
);Cada definición debe separarse de la siguiente mediante una coma. El error suele señalarse cerca de la segunda columna, aunque la causa esté al final de la primera.
Practica con datos
Laboratorio SQL
Resuelve la consulta
Escribe la sentencia SQL que cree una tabla cursos con las columnas id INTEGER, titulo VARCHAR(120) y horas INTEGER.
Resultado esperado: la tabla cursos con las columnas id, titulo y horas.
Empieza con CREATE TABLE cursos.
Abre paréntesis para las columnas.
Separa las tres definiciones con comas.
Solución
CREATE TABLE cursos (id INTEGER, titulo VARCHAR(120), horas INTEGER);La estructura expresa que horas es numérico y titulo es texto.
Puedes consultar la solución y volver a intentarlo. La práctica se completa cuando tu consulta funciona.
La consulta usa datos ficticios y se ejecuta solo en este navegador.
Fuentes técnicas consultadas
Las fuentes muestran una estructura común para crear tablas, pero los tipos concretos, columnas generadas, opciones de almacenamiento y sintaxis de identidad varían por motor. La práctica usa tipos sencillos aceptados por el laboratorio SQLite.
Comprueba si puedes explicarlo
Una tabla acaba de crearse con tres columnas y sin INSERT. ¿Cuántas filas tiene?
Ver respuesta razonada
Cero. CREATE TABLE define columnas y reglas; INSERT añade filas. Elegir un tipo de texto tampoco decide por sí solo si la columna permite NULL.
Responde antes de abrir la explicación. Si necesitaste ayuda, cierra la respuesta y vuelve a explicarlo con tus palabras antes de dar la lección por aprendida.
Qué debes recordar
- Una tabla traduce entidades y atributos a columnas.
- Cada columna necesita un nombre y un tipo declarado.
- Las reglas de calidad se añaden mediante restricciones.
A continuación: protege la estructura con claves y restricciones.