Вы находитесь на странице: 1из 19

Modelo Relacional

Marcelino Torres Villanueva


Contenido
Modelo Relacional.

Transformando el Modelo E-R (1 : N) al Modelo Relacional.

Modelo Relacional en Tablas.

Ejemplo de Modelo E-R al Modelo Relacional

Actividad
Modelo relacional
• El modelo relacional se ha establecido como el principal modelo de datos
para las aplicaciones de procesamiento de datos.
• El modelo relacional representa los datos en la base de datos como una
colección de relaciones, o, más informalmente, como un conjunto de tablas.
Cada fila de la tabla representa un conjunto de valores, mientras que cada
columna representa el papel que cumple esta columna respecto a la tabla.
• En la terminología de las Bases de Datos relacionales, una fila recibe el
nombre de Tupla, el nombre de una columna recibe el nombre de Atributo y la
tabla recibe el nombre de Relación .

Relación o Tabla: Producto

Código Nombre Precio Existencia

Registro, fila o tupla Producto01 Cuaderno 8.00 50


Producto02 Folder 4.00 30
Producto03 Lapiz 2.00 80

Atributo o columna
Transformando el Modelo E-R (1 : N) al Modelo Relacional
Un Modelo E-R debe ser transformado a un Modelo Relacional para poder construir la
Base de Datos en un Sistema Gestor de Base de Datos como los es SQL Server.

Para la transformación, se debe cumplir las siguientes recomendaciones o reglas.


• Todas las entidades del Modelo E-R se transforman en tablas en el Modelo Relacional
con sus mismos atributos.
• Toda tabla del Modelo Relacional debe tener una clave principal (PK: Primary key). La
PK debe ser un atributo que represente un identificador con valor no repetible. La PK
también puede estar formado por varios atributos (clave compuesta) que representen
en conjunto un identificador con valor no repetible.
• Las relaciones entre entidades del Modelo E-R cuya cardinalidad en la relación sea de
1 a N, N a 1 o 1 a 1, no serán tablas en el Modelo Relacional.
• Si la relación entre dos entidades del Modelo E-R es de 1 a N, entonces, en el Modelo
Relacional el atributo que es clave principal de la tabla que corresponde a la entidad
del extremo 1 en la relación viaja como atributo a la tabla que corresponde a la
entidad del extremo N en la relación. Este atributo que viaja y será parte de la tabla
que corresponde a la entidad del extremo N se define como clave foránea.
Ejemplo de Modelo E-R (1 : N) al Modelo Relacional
Modelo E-R
dni nombre 1:N número importe

(1,1) (1,N)
Cliente prestatario Préstamo

Transformación

Modelo Relacional

Cliente (dni, nombre) Préstamo (número, importe, dni)


PK PK FK
La clave primaria (PK) viaja
como clave foránea(FK)
Ejemplo de Modelo E-R (1:N) al Modelo Relacional

dni nombre 1:N número saldo

(1,1) (1,N)
Cliente pertenece Cuenta

Modelo E-R

transformación

Clave principal (PK)

Clave foránea (FK)


Cliente (dni, nombre)
Modelo relacional
Cuenta (numero, saldo, dni)
Tabl
a
Modelo relacional en tablas
La tabla: Cliente

dni nombre
12121212 Juan Riso Fila o tupla
13131313 María Zavaleta
1
14141414 Pedro Cárdenas

Clave principal Columnas o atributos


La tabla: Cuenta
número-cuenta saldo dni
C-10 2000 13131313 N
C-12 3000 13131313
C-14 5000 14141414

Clave principal Clave foránea


Del Modelo E-R al Modelo Relacional
Modelo E-R

idactor nombre nombre código título

(1,N) (1,N)
Actor actúa Película

N:N
Transformación
Tabl Tabl
Tabl
a a
a
Actor (idactor, nombre)
Actuación (idactor, código, nombre) Pelicula (código, título)
idactor (PK) nombre
A001 José P. código (PK) título
idactor código nombre P001 Encadenados
A002 Mercy E.
A001 P001 Pedro C. P002 La rebelde
1
A002 P001 Laura R.
N N 1
Modelo Relacional A002 P002 Lucero Z.
Actividad 1: Del Modelo E-R al Modelo Relacional
Transformar el Modelo E-R al Modelo Relacional y represente las tablas con datos

nombre fecha

dni teléfono 1:N número hora

(1,1) (1,N)
Paciente solicita Cita

(1,N)
idpaciente

atiende 1:N
nombre

dni especialidad

(1,1)
idmedico Médico
Solución de la actividad 1
MODELO RELACIONAL:

Paciente (idpaciente, dni, nombre, teléfono)


PK

Cita (número, fecha, hora, idpaciente, idmedico)


PK FK FK

Medico (idmedico, dni, nombre, especialidad)


PK
Solución de la actividad 1
idpaciente (PK) dni nombre teléfono
1
P001 12312300 Marcelino T. 234234
P002 23423400 Fabiola R. 257257

número (PK) fecha hora Idpaciente (FK) Idmedico (FK)


N
Cita001 01/04/2018 P001 M001
Cita002 15/04/2018 P001 M001
Cita003 10/04/2018 P002 M002 N

idmedico (PK) dni nombre especialidad


M001 23456789 Ricardo R. Cirujano 1
M002 12345678 David A. Ginecólogo
ACTIVIDAD 2: Del Modelo E-R al Modelo Relacional
Transformar el Modelo E-R al Modelo relacional y represente las tablas con datos

nombre fecha_inicio

código nivel 1:N número fecha_fin

(1,1) (1,N)
Curso se dicta Clase

(1,N)

Modelo E-R
se asigna 1:N
nombre

dni especialidad

(1,1)
Profesor
Solución de la actividad 2
Modelo Relacional:

Curso (código, nombre, nivel)


PK

Profesor (dni, nombre, especialidad)


PK

Turno (número, fecha_inicio, fecha_fin, código, dni)


PK FK FK
Modelo Entidad Relación “Biblioteca Informática”

A partir del siguiente enunciado, diseñar el modelo entidad-relación.


“En la biblioteca del centro se manejan fichas de autores y libros. En la ficha
de cada autor se tiene el código de autor y el nombre. De cada libro se
guarda el código, título, ISBN, editorial y número de página. Un autor puede
escribir varios libros, y un libro puede ser escrito por varios autores. Un libro
está formado por ejemplares. Cada ejemplar tiene un código y una
localización. Un libro tiene muchos ejemplares y un ejemplar pertenece sólo
a un libro.
Los usuarios de la biblioteca del centro también disponen de ficha en la
biblioteca y sacan ejemplares de ella. De cada usuario se guarda el código,
nombre, dirección y teléfono.
Los ejemplares son prestados a los usuarios. Un usuario puede tomar
prestados varios ejemplares, y un ejemplar puede ser prestado a varios
usuarios. De cada préstamos interesa guardar la fecha de préstamo y la
fecha de devolución”. Pasar el modelo entidad-relación resultante al
modelo relacional
Tablas:
autor: idautor(PK), nombre
libro: idlibro(PK), titulo, isbn,editorial, paginas
autor_libro : idautor(PFK), idlibro(PFK)
ejemplar: idejemplar(PK), localización, idlibro(FK)
usuario: idusuario(PK), nombre, telefono, direccion
usuario_ejemplar: idusuario(PFK), idejemplar(PFK),
fechaprestamo, fechadevolucion
create database biblioteca_informatica;

use biblioteca_informática;

create table autor(


idautor char(8) not null,
nombre varchar(40) not null,
primary key(idautor)
);

create table libro(


idlibro char(10) not null,
titulo varchar(80) not null,
isbn char(13) not null,
editorial varchar(30) not null,
paginas int not null,
primary key(idlibro)
);
create table autor_libro(
idautor char(8) not null,
idlibro char(10) not null,
primary key(idautor,idlibro),
foreign key(idautor) references autor(idautor),
foreign key(idlibro) references libro(idlibro)
);

create table ejemplar(


idejemplar char(10) not null,
localizacion varchar(50) not null,
idlibro char(10) not null,
primary key(idejemplar),
foreign key(idlibro) references libro(idlibro),
);
create table usuario(
idusuario char(8) not null,
nombre varchar(60) not null,
telefono varchar(20) not null,
direccion varchar(80) not null,
primary key(idusuario)
);

create table usuario_ejemplar(


idusuario char(8) not null,
idejemplar char(10) not null,
fechaprestamo datetime not null,
fechadevolucion datetime not null,
primary key(idusuario,idejemplar),
foreign key(idusuario) references usuario(idusuario),
foreign key (idejemplar) references ejemplar(idejemplar)
);

Вам также может понравиться