El poder de las claves foráneas en bases de datos relacionales

Una clave externa abre la puerta a todo un mundo de datos Los diseñadores de bases de datos hacen un uso amplio de las claves al desarrollar bases de datos relacionales.

Una clave externa abre la puerta a todo un mundo de datos

Los diseñadores de bases de datos hacen un uso amplio de las claves al desarrollar bases de datos relacionales. Entre las más comunes de estas claves se encuentran las claves primarias y las claves externas. Una clave externa de la base de datos es un campo en una tabla relacional que coincide con la columna de la clave primaria de otra tabla. Para comprender cómo funciona una clave externa, echemos un vistazo más de cerca a la idea de una base de datos relacional.

Algunos conceptos básicos de bases de datos relacionales

En una base de datos relacional, los datos se almacenan en tablas que contienen filas y columnas, lo que facilita su búsqueda y manipulación. Hay algunas matemáticas serias detrás del concepto de una base de datos relacional (álgebra relacional, propuesta por E.F. Codd en IBM en 1970), pero ese no es el tema de este artículo.

Para fines prácticos (y no matemáticos), una base de datos relacional almacena datos relacionados en filas y columnas. Además, y aquí es donde se pone interesante, la mayoría de las bases de datos están diseñadas para que los datos de una tabla puedan acceder a los datos de otra tabla. Esta capacidad de crear relaciones entre tablas es el poder real de una base de datos relacional.

Usar claves extranjeras

La mayoría de las tablas, especialmente aquellas en bases de datos grandes y complejas, tienen claves primarias. Las tablas diseñadas para acceder a otras tablas también deben tener una clave foránea.

Para usar la base de datos Northwinds comúnmente citada, aquí hay un extracto de una tabla de productos:

Identificación de producto
Nombre del producto
Categoria ID
CantidadPerU
Precio unitario
1 Chai 1 10 cajas x 20 bolsas 18.00
2 Chang 1 24 botellas de 12 oz 19.00
3 Jarabe de anís 2 12 botellas de 550 ml 10.00
4 Condimento cajún del chef Anton 2 48 tarros de 6 oz 22.00
5 Mezcla de Gumbo del Chef Anton 2 36 cajas 21.35
6 Extensión Boysenberry de la abuela 2 12 tarros de 8 onzas 25.00
7 Peras secas orgánicas del tío Bob 7 12 – paquetes de 1 lb. 30.00

La columna ProductID es la clave principal de esta tabla. Asigna una identificación única a cada producto.

Esta tabla también contiene una columna de clave externa, IdCategoría . Cada producto en la tabla Producto enlaza con una entrada en la tabla Categorías que define la categoría de ese producto.

Tenga en cuenta este extracto de la tabla Categorías de la base de datos:

Categoria ID
Nombre de la categoría
Descripción
1 Bebidas Refrescos, cafés, tés, cervezas y cervezas
2 Condimentos Salsas, sabores, condimentos y condimentos dulces y salados
3 Confecciones Postres, dulces y mollejas
5 Productos lácteos Quesos

La columna Id. De categoría es la clave principal de esta columna. (No tiene clave externa porque no tiene necesidad de acceder a otra tabla). Cada clave externa en la tabla Producto se vincula a una clave primaria en la tabla Categorías. Por ejemplo, al producto Chai se le asigna una categoría «Bebidas», mientras que el Jarabe de anís está en la categoría Condimentos.

Este tipo de vinculación crea una infinidad de formas de usar y reutilizar datos en una base de datos relacional.

Rate article
labsfabs.com
Add a comment