Tema 21 · CREATE TABLE

Creación de Tablas (CREATE TABLE) y Restricciones

Aprende a diseñar esquemas robustos con CREATE TABLE, domina los tipos de datos fundamentales en MySQL y aplica restricciones de integridad como PRIMARY KEY, NOT NULL, UNIQUE y DEFAULT.

Lenguaje DDL y Sintaxis de CREATE TABLE

La sentencia CREATE TABLE pertenece al subconjunto DDL (Data Definition Language) de SQL y se utiliza para crear una nueva tabla vacía en la base de datos definiendo el nombre de cada columna, su tipo de dato y sus reglas de integridad.

CREATE TABLE instructores (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    email VARCHAR(150) NOT NULL UNIQUE,
    especialidad VARCHAR(80) DEFAULT 'Desarrollo Web',
    salario_hora DECIMAL(8, 2) NOT NULL,
    activo TINYINT(1) DEFAULT 1,
    creado_en TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Tipos de Datos Clave en MySQL

Categoría Tipo Uso y Descripción
Numéricos INT / BIGINT Números enteros para identificadores, contadores y cantidades.
Decimales DECIMAL(M, D) Valores monetarios exactos sin pérdidas de precisión por coma flotante (ej: DECIMAL(10,2)).
Texto VARCHAR(N) Cadenas de longitud variable de hasta N caracteres (ahorra espacio).
Texto Largo TEXT / MEDIUMTEXT Artículos, descripciones extensas y bloques JSON o HTML.
Fechas DATETIME / TIMESTAMP Fechas y horas con zona horaria o marcas temporales de auditoría.

Restricciones de Integridad (Constraints)

  • PRIMARY KEY: Identifica de forma única cada fila; no admite nulos ni duplicados.
  • NOT NULL: Impide que una columna almacene valores vacíos o nulos.
  • UNIQUE: Garantiza que no existan dos filas con el mismo valor en dicha columna (por ejemplo, correos electrónicos).
  • DEFAULT: Asigna un valor predeterminado si el comando INSERT no especifica uno.
  • CHECK: Valida una condición lógica antes de admitir el registro (ej: CHECK (edad >= 18)).

⚡ Inspección de Esquema y Metadatos de Tabla

Consulta la estructura y tipos de datos del catálogo de cursos de la academia:

consulta.sql
Solo lectura
-- Inspeccionar columnas, tipos de datos y restricciones del catálogo de cursos
PRAGMA table_info(cursos);
Pruébalo tú mismo » Se abre en una nueva pestaña con ejecución en vivo
🦉
¿Tienes dudas con este tema?
Sócrates AI puede darte analogías y explicarte este código paso a paso.

🚀 ¿Quieres dominar Manual Completo de SQL & MySQL y crear proyectos reales?

Aprende arquitectura limpia, desarrollo web moderno, buenas prácticas y despliegue en producción con nuestro Bootcamp Fullstack Developer con mentorías en vivo.

🏛️ Autoría y Propiedad Intelectual: Obra educativa original de David Amador para Kilopolis Academia (Solucionáticos), estructurada sobre las especificaciones y estándares abiertos del W3C, el estándar vivo de WHATWG y la documentación oficial de código abierto. © Todos los derechos reservados.