Saltar al contenido

Tus archivos no se suben

Cómo crear una tabla en SQL

CREATE TABLE define las columnas, sus tipos y sus reglas. Elegir bien los tipos evita problemas después.

La forma general

CREATE TABLE productos (
  id INTEGER PRIMARY KEY,
  codigo VARCHAR(20) NOT NULL UNIQUE,
  nombre VARCHAR(100) NOT NULL,
  precio INTEGER CHECK (precio >= 0),
  stock INTEGER DEFAULT 0
);

Probar un ejemplo

Qué significa cada regla

ReglaQué hace
PRIMARY KEYIdentifica cada fila.
NOT NULLNo deja la columna vacía.
UNIQUENo permite valores repetidos.
DEFAULTPone un valor si no se indica otro.
CHECKExige una condición.

Tipos de datos por base

DatoPostgreSQLMySQLSQLiteSQL Server
EnteroINTEGERINTINTEGERINT
Entero grandeBIGINTBIGINTINTEGERBIGINT
Monto exactoNUMERIC(12,2)DECIMAL(12,2)Entero en la unidad menorDECIMAL(12,2)
Texto cortoVARCHAR(n)VARCHAR(n)TEXTNVARCHAR(n)
Texto largoTEXTTEXTTEXTNVARCHAR(MAX)
FechaDATEDATETEXTDATE
Verdadero o falsoBOOLEANTINYINT(1)INTEGERBIT

Tres errores comunes

  • Guardar montos en punto flotante. FLOAT redondea. Para dinero usa un decimal exacto, o enteros si manejas pesos.
  • Guardar códigos como número. Un código con ceros adelante debe ser texto.
  • Guardar fechas en cualquier formato. Usa el tipo DATE, o texto AAAA-MM-DD en SQLite.

Si ya tienes los datos en una planilla, CSV a SQL escribe la tabla por ti.

Fuente para SQLite: tipos de datos.

Preguntas frecuentes

¿Cuál es la diferencia entre VARCHAR y TEXT?

VARCHAR tiene largo máximo; TEXT, en general, no. En PostgreSQL rinden igual. En SQLite todo se guarda como TEXT.

¿Cómo agrego una columna después?

Con ALTER TABLE productos ADD COLUMN peso INTEGER;

Revisado el 6 de noviembre de 2026.