Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. Fases
El paso del modelo conceptual al relacional se realiza mediante una serie de pasos que nos
ofrecerán una serie de ventajas:
Independencia física: el modo de almacenamiento no influye en la definición de los datos
Indpendencia lógica: las operaciones sobre los datos no afectan a los tratamientos
Flexibilidad: para ofrecer distintos esquemas externos
Uniformidad: que facilita el empleo de los datos
Sencillez: es fácil de comprender y utilizar
Ejemplo
2.1.2. Atributos
Una vez tenemos claras las tablas, debemos pasar a distinguir las columnas de las que se
compondrán las tablas. Para ello, tenemos que fijarnos en los atributos que tienen las entidades:
Cada atributo simple se convertirá en una columna
Uno de los atributos, concretamente la clave principal, se convertirá en clave principal de
la tabla
Cada atributo multivaluado se convertirá en otra tabla cuya clave principal será la unión
de la clave primaria de la otra tabla y el atributo
Cada atributo compuesto se convertirá en tantas columnas como atributos lo compongan
Ejemplo
Si observamos el ejemplo anterior, obtenemos que las entidades contendrán los siguientes
atributos:
Clientes: nombre, apellidos, dni, dirección, fecha_nacimiento, edad
Productos: nombre, código
Proveedores: nombre, nif, dirección
Las claves primarias serán: dni para la tabla Clientes, código para la tabla Productos y nif para la
tabla Proveedores. Además, al ser teléfono un atributo multivaluado, se creará otra tabla nueva
llamada Teléfonos con dos campos: dni y teléfono, y cuya clave primaria serán, también, ambos
campos.
Otro elemento importante en el que tenemos que hacer hincapié es el de los tipos, ya que en el
modelo entidad-relación nos los darán, y seremos nosotros los encargados de pasarlos a los tipos
del sistema gestor de base de datos.
Ejemplo
Si observamos el ejemplo siguiente:
Observamos que la relación es 1:1, con lo que debemos seleccionar una de las entidades (vamos
a seleccionar departamento), y pasarle, como clave ajena, la clave primaria de la tabla director.
De este modo, quedará de la siguiente manera:
2.2.2. Relaciones 1:N
El segundo caso es el de las relaciones 1:N, es decir, aquellas en las que cada ocurrencia de una
entidad se relaciona con más de una de la otra entidad, pero las ocurrencias de cada entidad sólo
se relacionan con una de la primera entidad. La solución pasará por añadir, a la entidad que se
encuentra al lado del N del vínculo, la clave primaria de la otra entidad como una clave ajena.
Ejemplo
Ponemos un ejemplo para que se vea mejor:
Observamos que la relación es 1:N, por lo que debemos insertar, en la tabla ALUMNO, una nueva
columna que se corresponderá con la clave primaria de la tabla CURSO:
Ejemplo
Como ejemplo:
Observamos que la relación es N:M, por lo que creamos una nueva tabla con el nombre de la
relación (ASISTE) y cuyas columnas serán DNI y CÓDIGO:
3. Ejemplos de diseño
3.1. Gabinete de abogados
Dado el siguiente esquema entidad-relación y el listado de dominios, generaremos el modelo
relacional:
DOMINIOS:
num expediente: número 4 dígitos
fecha inicio: fecha
fecha fin: fecha
estado: cadena de 10 caracteres
dni: cadena de 9 caracteres
nombre: cadena de 20 caracteres
apellidos: cadena de 20 caracteres
dirección: cadena de 30 caracteres
fecha nacimiento: fecha
número colegiado: número de 5 dígitos
casos ganados: número de 5 dígitos
3.1.1. Fase 1
Primero transformamos las entidades en tablas y los atributos en columnas:
El atributo compuesto (período), tal y como hemos explicado, se descompondrá en los dos de los
que se compone (fecha inicio y fecha fin).
3.1.2. Fase 2
El siguiente paso es transformar las relaciones. Para ello, la relación corresponder, al ser 1:N,
hará que se pase la clave primaria de la tabla cliente a la tabla asunto como clave ajena. Además,
la relación llevar, al ser N:M, se convertirá en una tabla con las columnas dni y num_expediente,
es decir, las claves primarias de ambas tablas:
3.2. Videoclub
Dado el siguiente esquema entidad-relación y el listado de dominios generaremos el modelo
relacional:
DOMINIOS:
número: número de 4 dígitos
3.2.1. Fase 1
Primero transformamos las entidades en tablas y los atributos en columnas:
Como se puede observar, los atributos multivaluados directores y actores se convierten en tablas
cuyos atributos son: el propio atributo y la clave primaria de la tabla con la que se relacionan.
3.2.2. Fase 2
Ahora convertimos las relaciones:
En el caso de la relación sacar, como es N:M, se convierte en una tabla cuyas columnas son las
claves primarias de las tablas con las que se relaciona. Sin embargo, en el caso de la relación
guardar, al ser 1:N, el atributo num serie se introducirá en la tabla películas (parte N) como clave
ajena.