Ir al contenido principal

Terminología

Archivo

Un archivo es el conjunto de datos que el sistema guarda en un mismo soporte, bajo un nombre. En el lenguaje de las bases de datos, el término se usa en dos sentidos distintos, y conviene no confundirlos.

El archivo como conjunto de registros

Es el sentido más antiguo, anterior a las bases de datos. Un archivo es una colección de registros del mismo tipo: todos los clientes en un archivo, todos los productos en otro. Cada registro ocupa el mismo espacio y tiene los mismos campos, así que el programa sabe en qué posición del archivo está el registro número 50.

Ese esquema es el que hoy se reemplaza por tablas, pero el vocabulario quedó: cuando se habla de "un archivo de clientes", muchas veces se está hablando de la tabla de clientes.

El archivo como objeto del disco

Es el sentido actual: el archivo físico que el gestor guarda en el disco. Una base de datos no es un archivo, sino varios, cada uno con su función: los datos, los índices, el registro de cambios y el diccionario de datos.

Un archivo plano con extensión .csv —texto separado por comas— es el ejemplo más simple de archivo de datos, y se usa todo el tiempo para importar y exportar información entre bases de datos distintas. Es el formato que casi todas las herramientas entienden.

Ver los archivos de una base de datos por dentro

Registro

Un registro es una fila de una tabla: el conjunto de datos que describen a un elemento. Si la tabla es de libros, un registro es un libro; si es de alumnos, un registro es un alumno.

Cada registro está formado por los mismos campos, en el mismo orden, y todos los registros de una tabla comparten esa estructura. Lo que los diferencia es el valor que tiene cada campo en cada uno.

ID TÍTULO AUTOR AÑO
101Cien años de soledadGabriel García Márquez1967
102RayuelaJulio Cortázar1963

Cada fila es un registro, y las dos filas tienen los mismos cuatro campos. En las bases de datos no relacionales el concepto se mantiene, aunque cambie el nombre: ahí un registro es un documento, y no tiene por qué tener los mismos campos que sus vecinos.

Campo

Un campo —o columna, o atributo— es cada uno de los datos que describen a un registro. Es la unidad más pequeña de información, y el punto donde se guarda un valor concreto.

Lo que define a un campo es su tipo de dato: si guarda números, texto, fechas o valores lógicos. Ese tipo no es una formalidad: el gestor lo usa para rechazar lo que no corresponde.

Campo Tipo Qué admite
idEnteroNúmeros enteros, positivos, únicos
tituloTexto (50)Hasta 50 caracteres de texto
anioEnteroEl año de publicación
disponibleBooleanoSolo dos valores: sí o no

Por eso declarar bien un campo es una decisión de diseño y no un detalle: si el campo anio se declarara como texto, nada impediría guardar "mil novecientos" y después no se podría ordenar por año ni calcular promedios.

Tabla

Una tabla es el conjunto de registros del mismo tipo: la estructura que agrupa todas las filas con los mismos campos. Es el objeto central del modelo relacional, y cada tabla recibe un nombre único dentro de la base de datos.

La regla que ordena todo el diseño es esta: una tabla, un solo tema. Una tabla de clientes guarda clientes y nada más; una de productos, productos. Lo que relaciona a las tablas entre sí no es tener datos repetidos, sino el uso de claves.

Esa regla es la que se sigue cuando se normaliza, y romperla es lo que produce los problemas de redundancia.

Clave primaria

La clave primaria es el campo —o el conjunto de campos— que identifica de manera única cada registro de una tabla. Es lo que permite decir "este cliente" sin ambigüedad.

Sus dos condiciones

  • No se repite. No puede haber dos registros con el mismo valor de clave primaria: si se repitiera, serían dos cosas distintas con el mismo nombre y el sistema no podría distinguirlas.
  • No puede estar vacía. Si pudiera quedar sin valor, habría registros imposibles de identificar.

Además, la clave primaria crea un índice automáticamente. Tiene sentido: es el campo por el que se busca todo el tiempo.

Puede ser un número que el sistema genera solo —lo habitual— o un dato que ya existe en la realidad, como el número de documento o el legajo. En general conviene el número generado, porque los datos reales cambian: los documentos se corrigen, los legajos se reasignan, y una clave primaria que cambia es un problema serio.

Clave foránea

La clave foránea es un campo de una tabla que hace referencia a la clave primaria de otra tabla. Es el mecanismo que convierte dos tablas independientes en un sistema relacionado.

Tabla: LIBROS Tabla: PRESTAMOS
ID (primaria)TÍTULOID (primaria)LIBRO_ID (foránea)
101Rayuela1101
102Martín Fierro2101

En PRESTAMOS, el campo LIBRO_ID no guarda el título del libro: guarda un número que apunta a la tabla de libros. Así, el título del libro está escrito una sola vez, y los dos préstamos se refieren al mismo libro sin repetir su nombre.

La clave foránea puede repetirse —de hecho, en el ejemplo se repite: el mismo libro se prestó dos veces— y eso es exactamente lo que permiten las relaciones: muchos registros de una tabla apuntando a uno de otra. Esa relación se llama uno a muchos, y es la más común.

Índice

Un índice es una estructura aparte que mantiene ordenados los valores de un campo, junto con la ubicación del registro al que pertenecen. Su función es la misma que la del índice de un libro: en lugar de hojear todas las páginas, se consulta la lista ordenada y se va directo a la página.

Sin índice, para encontrar un cliente por su apellido hay que recorrer la tabla entera, fila por fila. Con índice, el gestor consulta la estructura ordenada y llega en un salto. Con mil registros la diferencia es imperceptible; con un millón, es la diferencia entre instantáneo y varios segundos.

Integridad de los datos

La integridad es la garantía de que los datos guardados son correctos y coherentes. Es el conjunto de reglas que el gestor hace cumplir, y se clasifica según qué tipo de regla protege.

Tipo Qué garantiza Ejemplo
De entidad Cada registro se puede identificar sin ambigüedad. La clave primaria no se repite y no queda vacía.
Referencial Toda referencia apunta a algo que existe. No se puede cargar un préstamo de un libro que no está en la tabla de libros.
De dominio Los valores que se cargan pertenecen al conjunto de valores permitidos. El campo anio acepta números de cuatro cifras, no texto.
De usuario Se cumplen las reglas propias del sistema, que no son generales. Un préstamo no puede tener fecha de devolución anterior a la de retiro.

La integridad es una responsabilidad compartida entre el gestor y quien diseñó la base. El gestor hace cumplir las reglas que se declararon; declararlas —o no— es una decisión del diseño. Una base sin restricciones acepta cualquier dato, incluso los imposibles, y después no hay forma de saber cuáles estaban mal.

Resumen

Término Qué es
ArchivoConjunto de datos guardados bajo un nombre. Una base de datos son varios archivos.
RegistroUna fila: los datos de un elemento.
CampoUna columna: cada dato que describe al registro.
TablaEl conjunto de registros del mismo tipo.
Clave primariaIdentifica cada registro. No se repite y no puede estar vacía.
Clave foráneaReferencia a la clave primaria de otra tabla.
ÍndiceEstructura ordenada que permite encontrar un registro sin recorrer la tabla.
IntegridadLas reglas que garantizan que los datos sean correctos y coherentes.
Resumen gráfico de la terminología de las bases de datos: archivo, registro, campo, tabla, clave primaria y clave foránea