Está en la página 1de 4

Materia: Bases de datos

Clase 2:
Restricciones:Las restricciones son condiciones que debe cumplir
ciertos datos en una BD, usaremos como ejemplo las entidades A y B
para explicar dichas restricciones.
Correspondencia de cardinalidad:
Uno a uno: A se relaciona con 0 o 1 de B y B se relaciona con
0 o 1 de A se representa con una linea que une la entidad a la
relacin A-<>-B
Ej: Casado con
Uno a varios: A se relaciona con mltiples B y B se relaciona
con 0 o 1 A se representa con un asterisco del lado de B. A-<>*B
Ej: cursa(Alumno, Ao)
Varios a uno: El caso inverso de uno a varios. se representa
con un asterisco del lado de A A*-<>-B
Varios a varios: A se relaciona con mltiples B y B se
relaciona con mltiples A. se representa con asteriscos a ambos
lados de la relacin. A*-<>-*B
Ej: compaeros
Restricciones de participacin:
La participacin de A en (A,B) se llama total si cada elemento
de A participa en (A,B), se representa con una doble linea del
lado de la entidad que participa totalmente. Sino la participacin
se considera parcial y se representa con una lnea simple.
Ej: hijo(A,A) se representa A=<hijo>-A
Ejercicio 4: Agregar a los esquemas de los ejercicios 2 y 3 las
restricciones de participacin.
Claves:
Una clave de una entidad es intuitivamente un conjunto de
atributos que permiten distinguir entidades entre si.
Superclave: Conjunto de atributos que permiten distinguir en
conjunto una entidad en particular.
Ej: de la entidad Persona(dni,nombre,domicilio) los conjuntos
{dni, nombre, domicilio} y {dni] son superclaves
Clave candidata: Superclaves que no contienen otras superclaves.
Ej: {dni} es clave candidata, podemos suponer que {nombre,
domicilio} tambin lo es, {dni, nombre} no es clave candidata.
Clave primaria: el la clave candidata que elegimos para
representar una entidad
Ej: {dni} podra ser nuestra clave primaria
Una vez elegida una clave primara se representa en el esquema
subrayando los nombres de los atributos que la componen.
Ejercicio 5: En el esquema del ejercicio 3 localice y subraye las

claves primarias de cada entidad.


Es necesario claves primarias en las relaciones tambin?Por qu?
Par formalizar un poco este tema se puede obtener las claves
primarias de las relaciones desde las claves primarias de las
entidades.
Sea R una relacin y E1,....En las entidades que intervienen.
Una clave candidata para R es la unin de las claves primarias de
las entidades.
Clave-priamria(R) = Clave-primaria(E1)U....U Clave-primaria(En)
Ejercicio 6: Seale en los esquemas anteriores las claves
principales de las entidades.
Entidades dbiles
Cuando un conjunto de entidades no tiene los suficientes atributos
para definir una clave primaria, se la llama entidad dbil.
Se representa con un cuadrado con doble linea y doble linea en el
rombo de la relacin que la une con la entidad fuerte
correspondiente.
La relacin que une estas entidades no tiene atributos
descriptivos, directamente se ponen los atributos en la entidad
debil.
Ej: si tengo un prstamo, puedo tener una entidad cuota con
id, N de cuota, pero necesito hacer referencia a ese prstamo
para identificar totalmente esa cuota. Se llama discriminante a la
clave que me permite identificar una entidad dbil de la otra.
Modelo ER Extendido
Especializacin:
El proceso de designacin de subgrupos dentro de un conjunto de
entidades se conoce como especializacin.
Ej: Puedo tener una base de datos de materiales multimedia.
Mmedia(Ttulo, Precio, n inventario), dentro de material
multimedia puedo tener Juego(gnero, edad mnima, requerimientos),
Msica(Discogrfica, Autor, Ao), Video (resolucin, formato)
Se representa con una linea saliendo de la entidad madre hasta un
tringulo y salen de ah las entidades hijo.
El proceso inverso, se lo conoce como generalizacin.
Los atributos de los conjuntos de entidades de nivel mas alto se
dice que son heredados por los conjuntos de nivel mas bajo
Ej: El atributo Ttulo del tipo msica es heredado de Material
Multimedia.
Ejercicio 7: Hacer el diagrama ER del ejemplo mencionado recin.

Diseo de BD ER
Fases de diseo
1) Caracterizar completamente las necesidades de datos necesarios.
Esto se conoce coomo la especificacin de requisitos de usuario
2) Diseo conceptual: es donde el programador traduce estos
requerimientos a un esquema conceptual que permita entender el
sistema. En este caso el diseo muestra los conjuntos de
entidades, de relaciones, atributos y restricciones de
correspondencia.
3) Requisitos funcionales, descirbe las operaciones que se van a
realizar en el sistema, luego se revisa el diseo conceptual
nuevamente.
4)Diseo lgico, se traduce el esquema al modelo de datos que se
va a implementar en el sistema. (en este caso tablas)
1) Algunos ejemplos de diseo cuando usar un atributo o una
relacin con una entidad.
Opcin 1:
Empleado(nombre, telfono)
Opcin 2:
Empleado(nombre), Telfono(nmero), tiene(E,T)
Que diferencia hay entre tener el telfono como una tributo, un
atributo multivalorado y una relacin con una entidad. En este
caso conviene usar telfono como entidad si se quiere guardar
informacin extra sobre el telfono.
2) En general es una buena pista designar relaciones para acciones
que ocurren entre entidades.
Equivalencia entre Diagrama de ER y clases
Lo que llamamos a un conjunto de entidades, es equivalente a la
clase. Y una entidad en particular equivalente a un objeto.
Transformar Diagramas de ER a Tablas
Una base de datos que se ajusta a un esquema de ba ses de datos
E-R se puede representar por una coleccin de tablas. Para cada
conjunto de entidades de la base de datos y para cada conjunto de
relaciones de la base de datos hay una nica tabla a la que se
asigna el nombre del conjunto de entidades o del conjunto de
relaciones correspondiente. Cada tabla tiene varias columnas, cada
una de las cuales tiene un nombre nico.
Entidades Fuertes:
Se arma una tabla con el nombre del conjunto de entidades, y en
las columnas se hace una columna por atributo que tenga ese
conjunto de entidades. Cada fila de la tabla corresponde a una

entidad en particular.
Entidades Dbiles:
Se comienza igual que el caso de las entides fuertes, luego se
agrega tambin una columna por cada atributo de la clave principal
correspondiente a la entidad fuerte asociada.
Ej: Si tengo la entidad fuerte Prstamo(id-prestamo,id-cliente) y
la entidad debil CuotaPrestamo(n-cuota, monto, fecha)
Se traduce a
|id-prestamo|id-cliente para Prestamo y
|n-cutoa|monto|fecha|id-prstamo| para CuotaPrestamo
Relaciones
Se crea una tabla con el nombre de la relacin, y se pone como
columnas las claves primarias de las entidades asociadas. Si
hubieran se agregan una columna por atributo descriptivo de la
relacin.
No se crea tablas para las relaciones asociadas a entidades
dbiles.
Atributos Compuestos:
Se crea una columna por cada sub-atributo, pero no se crea una
para el atributo compuesto en si.
Atributos Multivalorados:
Se crea una tabla aparte, con la clave principal de la entidad o
(entidades si es una relacin) correspondiente y el atributo en
si.
Especializacin (o generalizacin):
Hay dos opciones:
1)Se hace igual que las entidades dbiles
2)Si la especializacin es disjunta (es decir que una
instancia no puede ser de varias sublclases al mismo tiempo) Se
puede obviar hacer una tabla para la superclase y hacer solo una
por subclase, agregando los atributos correspondientes a la
superclase.
Observacion:
Revisar que no haya tablas con informacin que se repita, por
ejemplo en las relaciones que son similares a las entidades
dbiles. Tambin se pueden fijar de combinar tablas.
Ejercicio 8: Tomar alguno de los ejercicios anteriores y
convertirlo a tablas.

También podría gustarte