You are on page 1of 5

MODELO RELACIONAL

El modelo relacional fue desarrollado inicialmente por E. F. Codd en los aos


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 relacin. No debe
confundirse con el trmino relacin visto en el modelo E/R. Recordamos que,
en el modelo E/R, una relacin es una asociacin o correspondencia entre
entidades, y que tambin poda llamarse interrelacin.
En el modelo relacional, cada relacin se representa mediante una tabla
bidimensional, y se utilizarn 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 relacin COCHE-USADO:
Matrcula

Modelo

KM

PVP

Garanta

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

Terminologa 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 nmero de atributos o campos.
Cardinalidad . Es el nmero de tuplas de la tabla.
-Grado. Es el nmero 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 Garanta es un nmero comprendido
entre 3 y

18, que representa el nmero de meses mnimo y mximo que ofrece el


concesionario como garanta del coche.
Clave candidata. Conjunto mnimo de atributos que identifican de forma
unvoca cada tupla de una relacin.
Clave principal o primaria. Clave candidata elegida para identificar las tuplas
de una relacin. Las restantes claves candidatas que no han sido elegidas
como claves primarias de una relacin son claves alternativas.
Clave fornea o externa. Conjunto de atributos en una relacin que es una
clave primaria en otra (o incluso en la misma). Dicho de un modo ms formal,
si una relacin R1 est relacionada con otra R2, una clave fornea de la
relacin R2 es un conjunto de atributos cuyos valores han de coincidir con los
valores de la clave primaria de la relacin R1. Por ejemplo:

DEPARTAMENTOS (R1)
Cdigo

Nombre

D001

Informtica

D002

Ingls

D003

Ciencias

LIBROS (R2)
ISBN

Ttulo

012345678 SQL Server


876543210 La clula Ibarra,

Autor ...

CdigoDepto

De Miguel, A.
E. ...

234567890 El cuerpo humano Salgado, M. ...

... D001
D003
D003

El atributo CdigoDepto es un ejemplo de clave fornea: los valores del


atributo CdigoDepto de la relacin LIBROS deben coincidir con los de la
clave primaria, Cdigo, de la relacin DEPARTAMENTOS.
Ejemplo
En la tabla del apartado 4.1 se puede observar una relacin llamada COCHEUSADO, con las siguientes caractersticas:
Grado: cinco.
Cardinalidad: cuatro.
Atributos: Matrcula, Modelo, KM, PVP y Garanta.

Una tupla es, por ejemplo, la formada por los datos {3344-BNC, Audi A3,
30.000, 9.500, 12}.
El dominio de Garanta es el conjunto de nmeros enteros positivos
comprendidos entre 3 y 18.
Clave candidata: Matrcula.
Clave primaria: Matrcula (no hay claves alternativas).

Requisitos de una tabla en una base de datos relacional


En general, una tabla debe reunir los siguientes requisitos para ser considerada
como una relacin:
Debe tener un nmero fijo de atributos para todas las tuplas.
Cada atributo tiene un nico dominio.
El orden de las tuplas y de los atributos no es relevante.
No puede haber dos tuplas iguales.
Cada interseccin fila-columna debe contener un valor nico perteneciente
al dominio de la columna correspondiente (no hay grupos repetitivos).

Una base de datos que se ajusta al modelo relacional puede representarse


como un conjunto de tablas
-

Convertir un diagram E.R. a tablas es el primer paso para obtener una


base de datos relacional
Normalmente cada entidad y cada relacin muchos a muchos da lugar a
una tabla
Cada tabla tienen un conjunto de columnas que suelen corresponderse
con los atributos.

Representando conjuntos de entidades como


Una entidad (fuerte) se puede escribir como unas tablas con tantas columnas
como atributos.
Atributos compuestos y multivaluados.
Los atributos compuestos (no atmicos) se descomponen en partes
atmicas Ejemplo: la entidad cliente con atributo nombre pasara a tener
atributos: nombre_de_pila, primer_apellido, 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. Crea la tabla
hijos_empleado( id_empleado, nombre, edad...) Si hubieras creado la entidad
hijos en el diseo original sera una entidad dbil (o no).
Entidades Dbiles Entidades Dbiles
Una entidad dbil da lugar a una tabla que incluye una/s
columna/s con la clave primaria de la entidad fuerte.
Conjuntos de Relaciones.
Un conjunto de relaciones muchos a muchos da lugar a una tabla que contiene
las claves primarias de las entidades que relaciona.
Relaciones Muchos a Uno
Los conjuntos de relacione muchos a uno no dan lugar a ninguna tabla. Se rep
resentan aadiendo 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
relacin. Por lo tanto existen dos soluciones posibles Esto es, se aade un
atributo extra a UNA de las tablas obtenidas a partir de las entidades
relacionadas Las entidades dbiles son siempre uno a muchos

Representando especializacin como tablas


Mtodo 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.

Tabla
persona
cliente
empleado

atributos
nombre, calle, ciudad
nombre, crdito
nombre, salario

- Desventajas de esta aproximacin: obtener informacin 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, calle, ciudad

cliente

nombre, calle, ciudad, crdito

empleado

nombre, calle, ciudad, salario

si la especializacin 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 aproximacin: si existen personas que son clientes y
empleados simultneamente la base contiene informacin redundante.

Hallar claves primarias


Identificar atributos multivaluados/compuestos y convertirlos en
entidades (o quiza en varios atributos)
Identificar entidades dbiles
Identificar atributos/entidades redundantes
Identificar relaciones que darn lugar a tablas n a n (y relaciones que no
darn lugar a tablas)
Todas las entidades producen una tabla

You might also like