Você está na página 1de 5

DISEÑO DE BASE DE DATOS EMPLEANDO

MODELOS ENTIDAD-RELACION

Caso I

Dado el siguiente modelo E-R

descripcion
ruc razon medida
fecha Numero
CodProveedor codsuministro
direccion stockactual

proveedor Ingreso suministro

Moneda tipocambio

subcta
clase
cuenta
descripcion

cuenta_
pertenece
contable

Convertiremos los conjuntos de entidades en relaciones:

PROVEEDOR(Codproveedor, ruc, razon, direccion)


SUMINISTRO(codsuministro,descripcion, medida, stockactual)
CUENTA_CONTABLE(cuenta, subcta, clase, descripcion)

Ahora veamos la conversión de las interrelaciones:

INGRESO(numero, codproveedor, codsuministro, fecha, moneda, tipocambio)


PERTENECE(codsuministro, cuenta)

Aquí podemos aplicar la propagación de claves entre conjuntos de entidades que mantengan una
interrelación muchos a uno o uno a uno. En este caso, la interrelación:

• Entre Suministro y Cuenta_contable se cumple la condición de muchos a uno, de modo


que se puede eliminar la interrelación pertenece y propagar la clave de
Cuenta_Contable a la entidad Suministro.
PROVEEDOR(Codproveedor, ruc, razon, direccion)
SUMINISTRO(codsuministro, descripcion, medida, stockactual, cuenta)
CUENTA_CONTABLE(cuenta, subcta, clase, descripcion)
INGRESO(numero, codproveedor, codsuministro, fecha, moneda, tipocambio)

Aquí podemos ver que la relación ingreso contiene atributos que pueden normalizarse,
aplicamos las reglas de normalización y obtenemos la siguiente estructura.

PROVEEDOR(Codproveedor, ruc, razon, direccion)


SUMINISTRO(codsuministro, descripcion, medida, stockactual, cuenta)
CUENTA_CONTABLE(cuenta, subcta, clase, descripcion)
INGRESO(numero, fecha, codprovedor, moneda, tipocambio)
DETA_INGRESO(numero, codsuministro,cantidad, precio)

Nota que podemos adicionar otros atributos propios de la tabla DETA_INGRESO.

La representación final sería la siguiente:

Proveedor Ingreso Cuenta_contable

Numero
Codproveedor Cuenta
Fecha
Ruc Subcta
Moneda
Razon Clase
Tipocambio
Direccion Descripcion
codigo

Deta_ingreso Suministro

Numero
codsuministro
codsuministro
descripcion
Cantidad
medida
Precio
stockactual
cuenta
Caso II

Dado el siguiente modelo E-R

fecha_
presta
nombre escuela
registro titulo
codalumno codlibro codespecialidad nombre
ciclo
paginas

alumno presta libro tiene especialidad

nombre
codautor
fecha_ email
devolucion

escrito_por autor

nombre direccion
codeditorial
telefono

pertenece Editorial

Convertiremos los conjuntos de entidades en relaciones:

ALUMNO(Codalumno, Nombre, Escuela ,Ciclo)


LIBRO(CodLibro, Registro, Titulo, Paginas)
ESPECIALIDAD(Codespecialidad, Nombre)
AUTOR(CodAutor, Nombre, email)
EDITORIAL(codEditorial, Nombre, Dirección, Teléfono)

Recordemos que Presta es una entidad compuesta:

PRESTA(codalumno, codlibro, Fecha_préstamo, Fecha_devolución, observacion)

Ahora veamos la conversión de las interrelaciones:

TIENE(codLibro, codespecialidad)
ESCRITO_POR(Codlibro, Codautor)
PERTENECE(Codlibro, Codeditorial)
Aquí podemos aplicar la propagación de claves entre conjuntos de entidades que mantengan una
interrelación muchos a uno o uno a uno. En este caso, la interrelación:

• Entre Libro y Editorial se cumple esa condición, de modo que podemos eliminar la
interrelación pertenece y propagar la clave de Editorial a la entidad Libro.

• Del mismo modo la interrelación Libro y Especialidad es de Muchos a uno, por lo tanto
se elimina la interrelación Tiene y se propaga la clave de Especialidad a la entidad
Libro.

ALUMNO(Codalumno, Nombre, Escuela ,Ciclo)


LIBRO(Codlibro, registro, titulo, paginas, codeditorial, codespecialidad)
ESPECIALIDAD(codespecialidad, Nombre)
AUTOR(Codautor, Nombre, email)
EDITORIAL(codeditorial, Nombre, Dirección, Teléfono)
PRESTA(Codalumno, codlibro,Fecha_presta,Fecha_devolución, observación)
ESCRITO_POR(Codlibro, Codautor)

Nota, que igual al ejemplo anterior puedes normalizar la tabla PRESTA, quedando la siguiente
estructura, también nota que puedes agregar un campo número el cual va a servir de su clave
primaria.

ALUMNO(Codalumno, Nombre, Escuela ,Ciclo)


LIBRO(Codlibro, registro, titulo, paginas, codeditorial, codespecialidad)
ESPECIALIDAD(codespecialidad, Nombre)
AUTOR(Codautor, Nombre, email)
EDITORIAL(codeditorial, Nombre, Dirección, Teléfono)
PRESTA(numero, Codalumno, Fecha_presta,Fecha_devolución, observación)
DETA_PRESTA(numero, codlibro)
ESCRITO_POR(Codlibro, Codautor)

Su representación sería la siguiente:


Alumno Presta
Especialidad
Numero
Codalumno
Fecha_presta
Nombre Codespecialidad
Fecha_devolucion
Escuela Nombre
codalumno
Ciclo
Observacion

Deta_Presta Libro
Escrito_por
Codlibro
Registro
Numero Titulo Codlibro
Codlibro Paginas Codautor
codeditorial
codespecialiudad

Autor
Editorial
Codautor
Nombre
Codeditorial Email
Nombre
Direccion
Telefono

Você também pode gostar