Estructura · modelo relacional

Tabla en SQL

Una tabla organiza datos relacionados en filas y columnas, pero su significado también depende de tipos, claves y restricciones.

Lectura: 5–7 minEjemplo comprobadoPráctica con pistas
Contenido de esta guía

Qué es una tabla

Una tabla es una estructura con columnas definidas y cero o más filas. Cada fila representa una ocurrencia del concepto que modela la tabla; cada columna registra una propiedad concreta.

En productos, una fila representa un producto. Las columnas nombre, precio y stock no son listas independientes: juntas describen el mismo producto identificado por id.

Estructura y datos no son lo mismo

Esquema

Define nombres de columnas, tipos, valores predeterminados, claves y restricciones. Cambia mediante instrucciones de definición como CREATE TABLE o ALTER TABLE.

Filas almacenadas

Contienen los valores concretos. Cambian mediante INSERT, UPDATE y DELETE.

Una tabla puede existir sin filas. Su estructura sigue definida aunque una consulta SELECT * no devuelva resultados.

Ejemplo: leer tres filas sin confundir posiciones

SQL
SELECT id, nombre, precio
FROM productos
ORDER BY id
LIMIT 3;
Tres filas de la tabla productos
idnombreprecio
1Ratón24,9
2Teclado49,5
3Monitor 24179,0

El orden visual no forma parte de la tabla. Se ha solicitado con ORDER BY id. Sin esa cláusula, el motor no garantiza que las filas aparezcan siempre en la misma secuencia.

Por qué una tabla necesita identidad y reglas

Una clave primaria identifica cada fila de forma única. Una clave foránea relaciona una fila con otra tabla. Las restricciones como NOT NULL, UNIQUE o CHECK impiden estados que el modelo considera inválidos.

Estas reglas no sustituyen una buena explicación del dominio, pero hacen que la base de datos pueda rechazar parte de los errores antes de que se propaguen.

Cómo conocer una tabla de verdad

No deduzcas la estructura solo por una captura o por una consulta con algunas columnas. Revisa el esquema mediante las herramientas de metadatos de tu motor. Los comandos concretos cambian: PostgreSQL ofrece catálogos y comandos de cliente; SQLite dispone de pragmas; MySQL y SQL Server tienen sus propios catálogos.

Para conocer el contenido, utiliza consultas explícitas. Por ejemplo, esta consulta confirma que productos contiene nueve filas repartidas entre cinco categorías:

SQL
SELECT COUNT(*) AS filas,
       COUNT(DISTINCT categoria) AS categorias
FROM productos;
Resultado comprobado
filascategorias
95

Errores frecuentes

Tratar cada fila como una posición permanente

Una fila no es «la tercera» salvo que la consulta defina un orden. Identifícala mediante una clave estable.

Guardar varios valores en una sola celda

Una lista separada por comas suele dificultar filtros, relaciones y restricciones. Modela entidades y relaciones en tablas adecuadas.

Práctica de comprensión

Básica · modelo de datos

Describe la tabla clientes

Observa las columnas id, nombre, email, ciudad, fecha_registro y activo. Decide cuál debería identificar una fila, cuál puede ser desconocida y qué columna representa un estado lógico.

Compatibilidad entre motores

El concepto de tabla es común, pero los tipos, la generación automática de claves, las modificaciones de esquema y los comandos para inspeccionar metadatos cambian entre motores. Separa siempre el modelo general de la sintaxis específica.

Qué debes recordar

  • Las columnas definen propiedades; las filas contienen ocurrencias.
  • El esquema y los datos cambian con familias distintas de sentencias.
  • Una clave identifica filas; las restricciones protegen reglas.
  • El orden solo existe cuando la consulta lo solicita.

Conceptos relacionados

Fuentes técnicas consultadas