© fime-agvm-20041 sesión no. 3 modelación de datos, casos prácticos base de datos mtra. alicia...

Post on 05-Mar-2015

9 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© FIME-AGVM-2004 1

Sesión no. 3Modelación de datos, casos prácticos

Base de datos

Mtra. Alicia Guadalupe Valdez Menchaca

Universidad Autónoma de CoahuilaFacultad de Ingeniería Mecánica y Eléctrica

© FIME-AGVM-2004 2

Modelación de DatosConcepto de modelo de datos: Es un conjunto de conceptosque pueden ser usados para describir la estructura de una base de datos. La modelación de datos es utilizada para representar entidades de interés y sus relaciones en la base de datos.Permite la conceptualización de la asociación entre varias entidades y sus atributos

Los modelos de datos se clasifican en:

•Modelo jerárquico•Modelo de redes•Modelo relacional•Modelo orientado a objetos

© FIME-AGVM-2004 3

Conceptos BásicosEntidadesEntidades: son las unidades básicas utilizadas para la modelación de objetosconcretos o abstractos(ideas o conceptos).Ejemplo:•Edificio Empleado•Silla Transacción•Curso Persona•Máquina

Uno de los primeros pasos en modelación de datos es identificar y seleccionar las entidades que formarán la base de datos

Real andabstractobjects

Requirements fordatabase

application

Entities andrelationships

to be modeled

© FIME-AGVM-2004 4

EMPLOYEE

Name Soc_Sec_N Address Skill Annual_Salary

Entidad

Atributos

Dominio: Cada atributo de una entidad tiene un conjunto particular de valores,el conjunto posible de valores que un atributo puede tener es llamado dominio.

Ejemplo:Turno: Matutino y vespertinogrado : rango de números de 1 hasta 10carrera: ISC,IEI,IMEAnnual_Salary: Números positivos entre 0 y 9,999,999.99

Atributos: Son las propiedades que caracterizan una entidad , tambiénse le llama: elementos de datos o campo de datos.

© FIME-AGVM-2004 5

Key (llaves): Una llave de una entidad es un atributo o combinación de dos o másatributos que es usado para identificar una o mas instancias.

Llave primaria (primary key): llave que identifica una sola instancia de una entidad.

Llave secundaria (secondary key): atributo o conjunto de atributos que no son candidatos a llave pero que clasifica la entidad en una característica particular.

Llave foránea(foraney key): uno o más atributos que representan la llave primariaen otra entidad.

Ejemplo:Entidad EMPLOYEEatributos: Name Soc_Sec_No

AddressDepartmentSkillAnnual_Salary

Llave primaria: Soc_Sec_No (identifica un solo registro de datos).Llave secundaria: Department (identifica a los empleados por el depto. donde trabajan).Llave foránea: No tiene.

© FIME-AGVM-2004 6

Relationship

Razón de Cardinalidad: Especifica el número de ejemplaresDe vínculos en los que puede participar una entidad y puedenSer de:

1:11:NN:M

E1 R E21 N

Razón de Cardinalidad 1:N, para E1, E2 en R

© FIME-AGVM-2004 7

RelationshipRestricción de participación: Especifica si la existencia de una entidad depende de que esté relacionada con otra entidad a través del tipo de vínculo, existen dos clases:

•Total

•Parcial

E1 R E2

Participación total de E2 en R,Participación parcial de E1 en R

© FIME-AGVM-2004 8

Notación ER

Entidad

EntidadDébil

Atributo

Atributocompuesto

Relación

Relación deidentificación

Atributollave

Atributoderivado

© FIME-AGVM-2004 9

Caso de Estudio: La Compañía1.      La compañía está organizada en departamentos. Cada departamento tiene un nombre único, un número único y un cierto empleado que la dirige, y nos interesa la fecha en que dicho empleado comenzó a dirigir el departamento. 2.      Cada departamento controla un cierto número de proyectos, cada uno de los cuales tiene un nombre y un número únicos, y se efectúa en un solo lugar.3.      Almacenaremos el nombre, número de seguro social, dirección, salario, sexo y fecha de nacimiento de cada empleado. Todo empleado está asignado a un departamento, pero puede trabajar en varios proyectos, que no necesariamente estarán controlados por el mismo departamento. Nos interesa el número de horas por semana que un empleado trabaja en cada proyecto y quien es el supervisor .4.      Queremos mantenernos al tanto de los dependientes de cada empleado con el fin de administrar sus seguros. Almacenaremos el nombre, sexo y fecha de nacimiento de cada dependiente, y su parentesco con el empleado.  Diseñe un esquema ER para esta aplicación y un esquema, especifique los atributos clave de cada tipo de entidades y las restricciones estructurales de cada tipo de vínculos.

© FIME-AGVM-2004 10

Ejemplo:

Empleado Trabaja_en Departamento1N

Empleado trabaja en departamento

curp nombre

sueldo fecha

D_id D_nombre

Presupuesto

© FIME-AGVM-2004 11

Ejercicio de la Compañía

Tiempo estimado 20 minutos

© FIME-AGVM-2004 12

Modelo de datos: Caso la Compañía

Empleadoasignado

Departamento

1n

dirige

11

Proyecto

controla

n

1

Trabaja_en

n

m

Dependiente_de

Dependiente

n

1

Supervisión

1 N

supervisor

supervisado

© FIME-AGVM-2004 13

Transformación ER-RelacionalAlgoritmo de transformación ER-modelo relacional

Paso 1:Por cada tipo normal de entidades E del esquema ER, seCrea una relación R que contenga todos los atributos simples de E,Se incluyen solo los atributos simples componentes de un atributoCompuesto, la clave primaria de E será la clave primaria de R.

EMPLEADO(NSS,NOMBREE,PATERNO,MATERNO,SEXO,DIRECCION,SALARIO,FECHAN

DEPARTAMENTO(NUMEROD, NOMBRED

PROYECTO(NUMEROP, NOMBREP , LUGAR

© FIME-AGVM-2004 14

Transformación ER-RelacionalPaso 2: Por cada tipo de entidad débil D del esquema ER conTipo de entidades propietarias E, se crea una relación R y seIncluyen todos los atributos simples de D como atributos de R.

Además se incluyen como atributos de clave externa de R, losAtributos de clave primaria de la relación que corresponden alTipo de entidad propietaria, con esto damos cuenta del vínculoIdentificador de D.

La clave primaria de R es la combinación de las claves primariasDe las propietarias y la clave parcial de D, si existe.

DEPENDIENTE(NSS,Nombre_dependiente, sexo,fechaNac,Parentesco)

© FIME-AGVM-2004 15

Transformación ER-RelacionalPaso 3:Por cada tipo de vínculo binario 1:1 R del esquema ER,Se identifican las relaciones S y T que corresponden a los tipos De entidades que participan en R, se escoge una de las relaciones-digamos S- y se incluye como clave externa en S la clavePrimaria de T.

Es mejor elegir un tipo de entidades con participación total en REn el papel de S, se incluyen todos los atributos simples delTipo de vínculos 1:1 R como atributos de S

© FIME-AGVM-2004 16

Transformación de vínculos 1:1

Empleadoasignado

Departamento

1n

dirige

11

1m1

Transformaremos el tipo de vínculo 1:1 “Dirige” eligiendo Departamento para desempeñar el papel de S, debido a que su participación en Dirige es total (Todo departamento tiene un jefe), incluimos la clave primaria de la relación EMPLEADO como clave externa en la relación DEPARTAMENTO, NSSGTE, también incluimos el atributo simple Fechainicio de Dirige en laRelación DEPARTAMENTO.

ST

DEPARTAMENTO(Numerod, nombreD,NSSGte,FechaInicioGte

© FIME-AGVM-2004 17

Paso 4: Por cada tipo de vínculos normal(no débil) binario 1:N,RSe identifica la relación S que representa el tipo de entidadesParticipantes del lado N del tipo de vínculos.

Se incluye como clave externa en S la clave primaria de la relaciónT que representa al otro tipo de entidades que participa en R; laRazón es que cada ejemplar de entidad del lado N está relacionado con un máximo de un ejemplar de entidad del lado 1. Se incluyenTodos los atributos simples(o componentes simples de los atribCompuestos) del tipo de vínculos 1:N como atributos de S

Transformación de vínculos 1:N

© FIME-AGVM-2004 18

Transformación de vínculos 1:N

Empleadoasignado

Departamento

1n

Proyecto

controla

n

1

En el caso de “Asignado” incluimos la clave primaria de la relación Departamento como clave externa en la relación Empleado, en el caso de

Supervisión, incluir la clave primaria de la relación empleado como clave externa de la misma relación empleado NSSUPER. El vínculo “Controla” corresponde al atributo de clave externa NUMP.

Supervisión

1 nsupervisadosupervisor

© FIME-AGVM-2004 19

Transformación de vínculos 1:N

EMPLEADO(NSS,NOMBREE,PATERNO,MATERNO,SEXO,DIRECCION,SALARIO,FECHAN,NUMEROD,NSSUPER

DEPARTAMENTO(NUMEROD, NOMBRED

PROYECTO(NUMEROP, NOMBREP , LUGAR,NUMEROD,

© FIME-AGVM-2004 20

Transformación de vínculos N:M

Paso 5: Por cada tipo de vínculos binarios M:N, se crea unaNueva relación S para representar R, se incluyen como atributosDe clave externa en S, las claves primarias de las relacionesParticipantes, su combinación constituirá la clave primaria de S.

También se incluyen todos los atributos simples ( o componentesSimples de los atributos compuestos) del tipo de vínculosM:N

© FIME-AGVM-2004 21

Transformación de vínculos N:M

Empleado

Proyecto

Trabaja_en

n

m

Creando la relación “Trabaja_en”, incluir las claves primarias de las relaciones Empleado y Proyecto, como claves en Trabaja_en, también incluir el atributo

Horas_semana, para representar el atributo horas del tipo de vínculos

TRABAJA_EN(NSS,NUMEROP,HORAS_SEMANA)

© FIME-AGVM-2004 22

Cabe destacar que siempre es posible transformar losVínculos 1:1 y 1:N de una manera similar a como seHace con los vínculos M:N. Esta alternativa es útil sobreTodo cuando hay pocos ejemplares del vínculo, a finDe evitar valores nulos en las claves externas. En este casoLa clave primaria de la relación vínculo será la clave Externa de solo una de las relaciones entidad participantes.

En el caso de un vínculo 1:N, ésta será la relación entidadDel lado “N”, en el caso del vínculo 1:1, se elegirá la Relación entidad con participación total (si existe).

Transformación de vínculos 1:N

© FIME-AGVM-2004 23

Transformación ER-RelacionalPaso 6: Por cada atributo multivaluado A se crea una nuevaRelación R que contiene un atributo correspondiente a A, másEl atributo de clave primaria K (como clave externa en R) de La relación que representa el tipo de entidades o de vínculosQue tiene a A.

La clave primaria de R es la combinación de A y K, si elAtributo multivaluado es compuesto, se incluyen sus Componentes simples.

© FIME-AGVM-2004 24

Transformación FinalEMPLEADO(NSS,NOMBREE,PATERNO,MATERNO,SEXO,DIRECCION,SALARIO,FECHAN,NUMEROD,NSSUPER)

DEPARTAMENTO(NUMEROD, NOMBRED,NSSGTE,Fecha_inicioGte)

PROYECTO(NUMEROP, NOMBREP , LUGAR,NUMEROD)

TRABAJA_EN(NSS,NUMEROP,HORAS_SEMANA)

DEPENDIENTE(NSS,Nombre_dependiente, sexo,fechaNac,Parentesco)

© FIME-AGVM-2004 25

Resumiendo

1.- Entidades Fuertes.2.- Entidades Débiles.3.-. Relaciones 1:14.- Relaciones 1:N5.- Relaciones N:M6.- Atributos Multivalor

© FIME-AGVM-2004 26

Ejercicio: Transformar el sig. Modelo ER a Relacional.

A BA B

keyOfA keyOfBAttrOfA

derivedAttr

CompositeOfA

AttrA1 AttrA2 AttrA3

AttrOfB

1N

AttrOfBA

BB1

N

C

BC

1

1

keyOfC AttrOfC

MultiValuedAttr

parent

child

© FIME-AGVM-2004 27

Solución al ejercicio

A(KeyOfA, AttrOfA,derivedAttr,AttrA1,AttrA2,AttrA3, KeyOfB, AttrOfBA)

B(KeyOfB, AttrOfB, KeyOfC, parentKeyOfB)

C(KeyOfC, AttrOfC)

MultivaluedC(KeyOfC, MultivaluedAttr)

© FIME-AGVM-2004 28

Fin de Sesión

Tarea sesión no. 5: Caso de estudio no. 2

CapacitaciónElaborar:

1.- Modelo ER2.- Conversión a Relacional.

Good Bye

© FIME-AGVM-2004 29

top related