Estructura de una tabla: columnas y filas

Lectura
20 min~7 min lectura

Estructura de una tabla: columnas y filas

Imagina una tabla de Excel o una hoja de cálculo. Una tabla en SQL funciona exactamente igual, pero con superpoderes. Es la estructura fundamental donde se almacenan todos los datos en una base de datos relacional. En esta lección vas a entender cómo están organizadas las tablas y por qué es crucial comprender la diferencia entre columnas y filas.

📌 ¿Sabías que? Cada tabla en SQL tiene un propósito específico, como almacenar información de clientes, productos, pedidos o empleados. Piensa en una tabla como un contenedor temático de información.

¿Qué es una tabla en SQL?

Una tabla es una colección de datos organizados en un formato de cuadrícula con filas y columnas. Cada tabla tiene un nombre único dentro de la base de datos que la identifica claramente.

CONCEPTO CLAVE
En SQL, una tabla es la estructura básica para almacenar datos. Se compone de columnas (la estructura) y filas (los datos reales).

Las columnas: la estructura de la tabla

Las columnas definen qué tipo de información se puede almacenar en la tabla. Cada columna tiene un nombre, un tipo de dato específico y características especiales como permitir valores nulos o ser clave primaria.

Tipos de datos comunes en columnas

Tipo de dato Descripción Ejemplo
VARCHAR Texto de longitud variable "María García"
INT Números enteros 25, 100, 999
DATE Fecha 2024-01-15
DECIMAL Números con decimales 19.99, 3.50
BOOLEAN Verdadero o falso TRUE, FALSE
💡 Consejo: Elige siempre el tipo de dato más apropiado para cada columna. Esto ahorra espacio de almacenamiento y previene errores. Si necesitas guardar nombres, usa VARCHAR; para cantidades enteras, usa INT.

Características de las columnas

Cuando creamos una columna, podemos especificar varias características importantes:

  • NOT NULL: La columna debe tener siempre un valor
  • PRIMARY KEY: Identificador único para cada fila
  • UNIQUE: No puede haber valores repetidos
  • DEFAULT: Valor predeterminado si no se especifica

Las filas: los datos reales

Las filas (también llamadas registros o tuplas) son las entradas individuales de datos. Cada fila representa un objeto o entidad completa. Siguiendo el ejemplo de una tabla de empleados, cada fila sería los datos de un empleado específico.

CONCEPTO CLAVE
Piensa en las columnas como las preguntas de un formulario (¿Cuál es tu nombre? ¿Cuántos años tienes?) y en las filas como las respuestas completas de cada persona que preenchió el formulario.

Ejemplo práctico: tabla de empleados

Vamos a crear una tabla llamada empleados con la siguiente estructura:

CREATE TABLE empleados (
    id INT PRIMARY KEY,
    nombre VARCHAR(100) NOT NULL,
    puesto VARCHAR(50) NOT NULL,
    salario DECIMAL(10,2),
    fecha_contratacion DATE,
    activo BOOLEAN DEFAULT TRUE
);

Ahora veamos cómo se verían los datos (las filas) en esta tabla:

id nombre puesto salario fecha_contratacion activo
1 Carlos Rodríguez Desarrollador Senior 45000.00 2022-03-15 true
2 Ana Martínez López Diseñadora UX 38000.00 2023-01-10 true
3 Miguel Sánchez Ruiz Analista de Datos 42000.00 2021-08-22 true
4 Laura Fernández Castro Gerente de Proyecto 55000.00 2020-05-01 false
📌 Observa: En este ejemplo tenemos 4 filas (registros) y 6 columnas. Las columnas definen la estructura (qué datos guardamos) y las filas contienen los datos reales de cada empleado.

Diferencia entre columnas y filas

Es fundamental entender esta distinción porque la usarás constantemente en SQL:

💡 Analogía para recordar: Si una tabla fuera un edificio, las columnas serían los muros que sostienen la estructura (definición), y las filas serían los pisos con los residentes (datos reales).
Aspecto Columnas Filas
Definición Definen la estructura Contienen los datos
Analogía Campos de un formulario Respuestas completas
En SQL Se usan en SELECT, WHERE, GROUP BY Se manipulan con INSERT, UPDATE, DELETE
Cantidad típica Pocas (5-20 normalmente) Muchas (miles o millones)

La clave primaria: identificador único

Cada tabla debe tener una clave primaria (primary key), que es una columna (o combinación de columnas) que identifica de forma única cada fila. En nuestra tabla de empleados, la columna id es la clave primaria.

⚠️ Importante: La clave primaria nunca puede tener valores duplicados ni nulos. Dos empleados pueden tener el mismo nombre, pero nunca el mismo ID. Es como el número de identificación personal.

¿Por qué es necesaria una clave primaria?

  1. Identificación única: Cada fila necesita ser identificada sin ambigüedad
  2. Integridad de datos: Previene registros duplicados
  3. Relaciones: Otras tablas pueden referenciarla
  4. Rendimiento: Los sistemas optimizan las búsquedas por clave primaria

Insertar datos: añadiendo filas

Para agregar nuevas filas a una tabla, usamos el comando INSERT INTO:

INSERT INTO empleados (id, nombre, puesto, salario, fecha_contratacion, activo)
VALUES (5, 'Patricia Vega Torres', 'Contadora', 40000.00, '2024-02-01', TRUE);
La sintaxis de INSERT INTO sigue el patrón: INSERT INTO nombre_tabla (columnas) VALUES (valores). Los valores de texto van entre comillas simples, los números no.

Consultar la estructura de una tabla

Si quieres ver las columnas de una tabla sin sus datos, puedes usar:

DESCRIBE empleados;

O en algunos sistemas:

SELECT column_name, data_type 
FROM information_schema.columns 
WHERE table_name = 'empleados';
💡 Recuerda: DESCRIBE te muestra la estructura (las columnas), no los datos. Es útil cuando trabajas con bases de datos existentes y quieres entender cómo están organizadas.

Conceptos avanzados: esquemas

Ver más sobre esquemas de base de datos

Las tablas pertenecen a esquemas, que son contenedores lógicos dentro de una base de datos. El esquema predeterminado suele llamarse public.

La sintaxis completa sería: esquema.tabla.columna

Por ejemplo: recursos_humanos.empleados.id

Esto es especialmente útil en bases de datos grandes donde quieres organizar tablas relacionadas en grupos.

Errores comunes con columnas y filas

⚠️ Error frecuente: Intentar insertar una fila sin proporcionar un valor para una columna marcada como NOT NULL. Esto causará un error y la inserción fallará.
⚠️ Otro error común: Confundir qué operación afecta a filas vs columnas. SELECT, WHERE y ORDER BY trabajan con filas. ALTER TABLE y MODIFY trabajan con columnas.

Resumen visual

📌 Para recordar:
  • 📊 Columnas = Verticales = Definen QUÉ guardamos = Campos
  • 📋 Filas = Horizontales = Contienen los datos reales = Registros
  • 🔑 Primary Key = Identificador único por fila
  • 🏗️ Estructura = Columnas | Datos = Filas

Practicando lo aprendido

Ahora imagina que tienes una tabla llamada productos con estas columnas: id, nombre, precio, categoria, stock.

💡 Ejercicio mental: ¿Cuántas columnas tiene esta tabla? ¿Cuántas filas crearías al insertar 3 productos diferentes? La respuesta: 5 columnas y 3 filas.

Conclusión

Ahora entiendes la estructura fundamental de las tablas en SQL. Las columnas definen la estructura y los tipos de datos que puedes almacenar, mientras que las filas contienen los datos reales. Esta distinción es crucial para escribir consultas SQL efectivas y diseñar bases de datos bien organizadas.

En la próxima lección aprenderás sobre tipos de datos más detallados y cómo elegir el más apropiado para cada columna.

🧠 Quiz

Si una tabla tiene 10 columnas y almacena información de 500 clientes, ¿cuántas columnas y cuántas filas tiene la tabla?

  • A) 10 columnas y 500 filas
  • B) 500 columnas y 10 filas
  • C) 10 columnas y 10 filas
  • D) 500 columnas y 500 filas
✅ Respuesta correcta: A) 10 columnas y 500 filas. Las columnas definen la estructura (siempre las mismas: id, nombre, email, etc.) y las filas representan cada cliente individual (500 clientes = 500 filas).

🧠 Quiz

¿Para qué sirve la clave primaria (PRIMARY KEY) en una tabla?

  • A) Para encriptar los datos de la tabla
  • B) Para identificar de forma única cada fila de la tabla
  • C) Para ordenar las filas alfabéticamente
  • D) Para eliminar filas duplicadas manualmente
✅ Respuesta correcta: B) Para identificar de forma única cada fila. La primary key garantiza que cada registro tenga un valor único e irrepetible, como un número de documento o ID de empleado.

🧠 Quiz

¿Qué comando SQL usarías para ver la estructura (columnas) de una tabla llamada "clientes"?

  • A) SELECT * FROM clientes
  • B) DELETE FROM clientes
  • C) DESCRIBE clientes
  • D) UPDATE clientes SET
✅ Respuesta correcta: C) DESCRIBE clientes. Este comando muestra la estructura de la tabla sin mostrar los datos: los nombres de columnas, tipos de datos y restricciones. SELECT * mostraría los datos, no la estructura.