Vous êtes sur la page 1sur 5

MODELO RELACIONAL

El modelo relacional fue desarrollado inicialmente por E. F. Codd en los años
setenta y se ha ido divulgando progresivamente hasta ocupar el primer lugar
en los sistemas de bases de datos utilizados. El modelo se ha refinado con el
tiempo para cubrir las necesidades reales de los usuarios y, sobre todo, para
aumentar su potencia sin afectar a su simplicidad.
Elementos del modelo relacional
El elemento principal del modelo relacional de datos es la relación. No debe
confundirse con el término “relación” visto en el modelo E/R. Recordamos que,
en el modelo E/R, una relación es una asociación o correspondencia entre
entidades, y que también podía llamarse interrelación.
En el modelo relacional, cada relación se representa mediante una tabla
bidimensional, y se utilizarán relaciones (tablas) para representar tanto las
entidades como las interrelaciones estudiadas en el modelo conceptual E/R. Por
lo tanto, el esquema de una base de datos relacional es un conjunto de
relaciones que cumplen unas determinadas propiedades.
La figura siguiente es un ejemplo de tabla para la relación COCHE-USADO:
Matrícula

Modelo

KM

PVP

Garantía

1234-CGF

Renault

Laguna

5.000

3.000

7890-AUP

Ford Focus

60.000

5599-PMC

Opel Astra

2.500

3344-BNC

Audi A3

1.800
6.000

30.000

6
6

12
9.500

12

Terminología empleada en el modelo relacional
De las tablas se derivan los siguientes conceptos:
− Tupla o registro. Es cada una de las filas de la tabla.
− Atributo o campo. Es cada una de las columnas de la tabla. Todos los
registros o tuplas tienen igual número de atributos o campos.
− Cardinalidad . Es el número de tuplas de la tabla.
-Grado. Es el número de atributos de la tabla.
− Dominio de un atributo. Es el conjunto de valores que puede tomar dicho
atributo.
Por ejemplo, el dominio del atributo “Garantía” es un número comprendido
entre 3 y

1 se puede observar una relación llamada COCHEUSADO. Clave candidata elegida para identificar las tuplas de una relación.. “PVP” y “Garantía”. que representa el número de meses mínimo y máximo que ofrece el concesionario como garantía del coche. A. Autor . Conjunto mínimo de atributos que identifican de forma unívoca cada tupla de una relación. si una relación R1 está relacionada con otra R2. Las restantes claves candidatas que no han sido elegidas como claves primarias de una relación son claves alternativas. − Clave principal o primaria. − Cardinalidad: cuatro. Dicho de un modo más formal.. Conjunto de atributos en una relación que es una clave primaria en otra (o incluso en la misma)... D001 D003 D003 El atributo “CódigoDepto” es un ejemplo de clave foránea: los valores del atributo “CódigoDepto” de la relación LIBROS deben coincidir con los de la clave primaria. . “Modelo”. Por ejemplo: DEPARTAMENTOS (R1) Código Nombre D001 Informática D002 Inglés D003 Ciencias LIBROS (R2) ISBN Título 012345678 SQL Server 876543210 La célula Ibarra. CódigoDepto De Miguel. E. . “KM”. Ejemplo En la tabla del apartado 4. 234567890 El cuerpo humano Salgado. − Clave foránea o externa. de la relación DEPARTAMENTOS. una clave foránea de la relación R2 es un conjunto de atributos cuyos valores han de coincidir con los valores de la clave primaria de la relación R1. M... “Código”. . − Atributos: “Matrícula”. . con las siguientes características: − Grado: cinco..18.. − Clave candidata.

− Clave primaria: “Matrícula” (no hay claves alternativas). − Cada atributo tiene un único dominio. 30. 12}. una tabla debe reunir los siguientes requisitos para ser considerada como una relación: − Debe tener un número fijo de atributos para todas las tuplas.000. . Audi A3. − El dominio de “Garantía” es el conjunto de números enteros positivos comprendidos entre 3 y 18. 9. − Clave candidata: “Matrícula”. − No puede haber dos tuplas iguales. Requisitos de una tabla en una base de datos relacional En general.− Una tupla es. la formada por los datos {3344-BNC. por ejemplo.500. − El orden de las tuplas y de los atributos no es relevante. − Cada intersección fila-columna debe contener un valor único perteneciente al dominio de la columna correspondiente (no hay grupos repetitivos).

Un conjunto de relaciones muchos a muchos da lugar a una tabla que contiene las claves primarias de las entidades que relaciona. Por lo tanto existen dos soluciones posibles – Esto es. Se rep resentan añadiendo la clave del “lado” de uno a la tabla del lado “muchos” Relaciones uno a uno Relaciones uno a uno Para los conjuntos de relaciones uno a uno la clave primaria de una de las entidades que se relacionan deben formar parte de la tabla formada por la otra relación. se añade un atributo extra a UNA de las tablas obtenidas a partir de las entidades relacionadas  Las entidades débiles son siempre uno a muchos . nombre. Crea la tabla hijos_empleado( id_empleado.  Los atributos compuestos (no atómicos) se descomponen en partes atómicas – Ejemplo: la entidad cliente con atributo nombre pasaría a tener atributos: nombre_de_pila. Conjuntos de Relaciones. Relaciones Muchos a Uno ■Los conjuntos de relacione muchos a uno no dan lugar a ninguna tabla. Representando conjuntos de entidades como Una entidad (fuerte) se puede escribir como unas tablas con tantas columnas como atributos.Una base de datos que se ajusta al modelo relacional puede representarse como un conjunto de tablas - Convertir un diagram E. segundo_apellido  Un atributo multivaluado se representa como una tabla nueva – La nueva tabla tendrá una/s columna/s correspondiente/s a la clave primaria de la entidad original – Ejemplo: atributo “hijos” en la entidad empleado. primer_apellido. edad. Entidades Débiles Entidades Débiles ■Una entidad débil da lugar a una tabla que incluye una/s columna/s con la clave primaria de la entidad fuerte. a tablas es el primer paso para obtener una base de datos relacional Normalmente cada entidad y cada relación muchos a muchos da lugar a una tabla Cada tabla tienen un conjunto de columnas que suelen corresponderse con los atributos.R.) – Si hubieras creado la entidad “hijos” en el diseño original sería una entidad débil (o no). Atributos compuestos y multivaluados...

calle. ciudad. calle. ciudad nombre. salario – si la especialización es total (todas las personas tienen que ser o clientes o empleados) no se necesita una tabla para persona • a menos que las restricciones (claves extranjeras) lo hagan necesario – Inconvenientes de esta aproximación: si existen personas que son clientes y empleados simultáneamente la base contiene información redundante. calle. Tabla persona cliente empleado atributos nombre. ciudad cliente nombre. crédito empleado nombre. calle. - Hallar claves primarias Identificar atributos multivaluados/compuestos y convertirlos en entidades (o quiza en varios atributos) Identificar entidades débiles Identificar atributos/entidades redundantes Identificar relaciones que darán lugar a tablas n a n (y relaciones que no darán lugar a tablas) Todas las entidades producen una tabla . crédito nombre. salario . ciudad.Representando especialización como tablas Método 1: - Crear una tabla con la entidad de mayor nivel Formar una tabla con cada entidad de menor nivel incluyendo en la tabla la clave primaria de la entidad de mayor nivel y los atributos correspondientes a la entidad de menor nivel.Desventajas de esta aproximación: obtener información requiere acceder a dos tablas Metodo 2: – Crear una tabla para cada entidad con todos los atributos locales y todos los atributos heredados tabla atributos persona nombre.