© Belén Vela, Goyo Celada 2011
Bases de Datos
Profesor: Goyo Celada
Laboratorio III, L106/L111
© Belén Vela, Goyo Celada 2011
• Herramienta CASE en el modelado de Bases de Datos
• Metodología de trabajo:
• Modelo Conceptual
• Paso al Modelo Relacional
• Modelado con ERWIN.
• Modelo lógico
• Modelo físico
• Paso al SGBD GERwin / GNU Ferret
2
ERwin Data Modeler
© Belén Vela, Goyo Celada 2011
Al crear un nuevo modelo, existen tres tipos: • Lógico: entidades, atributos y relaciones
• Físico: tablas, columnas, restricciones y vistas
• Lógico/Físico: permite ver ambas vistas
ERwin
3
© Belén Vela, Goyo Celada 2011
2 Tipos de Notaciones para presentar las Cardinalidades:
Notación IDEF1X: Integration DEFinition for Information Modeling
Notación IE: Information Engineering
ERwin. Notaciones.
4
© Belén Vela, Goyo Celada 2011
IDEF1X IE
Publica /
Es Publicado
EDITORIAL
Nombre_E
Dirección
Ciudad
Pais
LIBRO
Código
Título
ISBN
Nombre_E (FK)
Publica /
Es Publicado
EDITORIAL
Nombre_E
Dirección
Ciudad
Pais
LIBRO
Código
Título
ISBN
Nombre_E (FK)
LIBRO EDITORIALTiene
1:N
CódigoNombre_e
(0,n) (1,1)
E/R
ERwin. Notaciones.
5
© Belén Vela, Goyo Celada 2011
Las opciones de la barra de herramientas dependerán de la notación elegida:
ERwin. Notaciones.
6
IDEF1X Notation
Logical Physical
IE Notation
Logical Physical
© Belén Vela, Goyo Celada 2011
Componentes:
Entidades
Relaciones
Cardinalidades
Jerarquías
Reglas de validación
Dominios
ERwin. Componentes del Diagrama.
7
© Belén Vela, Goyo Celada 2011
- Regulares: no dependen de ninguna otra
entidad para su identificación.
- Débiles: dependen de una o más entidades
para su identificación.
ERwin. Entidades.
8
© Belén Vela, Goyo Celada 2011
ERwin. Entidades.
1 2
2
9
© Belén Vela, Goyo Celada 2011
ERwin. Atributos.
10
© Belén Vela, Goyo Celada 2011
Clave primaria (PK): atributo o grupo de atributos
elegido como el único identificador de una
entidad.
Clave ajena (FK): clave primaria de otra entidad.
Clave alternativa (AK): atributo o grupo de
atributos que pueden ser elegidos como PK.
Multivaluados.
ERwin. Atributos.
11
© Belén Vela, Goyo Celada 2011
La Clave Ajena (FK: Foreign Key) puede aparecer en ambas áreas.
Atributos que forman parte de la Clave Primaria
Atributos que no forman parte de la Clave Primaria
ERwin. Clave Primaria y Ajena.
¿En qué casos puede
aparecer arriba?
12
¿En qué casos puede
una FK formar parte de una PK?
© Belén Vela, Goyo Celada 2011
ERwin. Clave Primaria y Ajena.
Clave Ajena
13
© Belén Vela, Goyo Celada 2011
ERwin. Clave Alternativa (UNIQUE)
14
© Belén Vela, Goyo Celada 2011
ERwin. Vista de Componentes.
15
© Belén Vela, Goyo Celada 2011
ERwin. Relaciones.
Regulares: la clave primaria de la entidad padre se añade a la parte del
área de atributos regulares de la hija (no en el área de claves primarias).
17
LIBRO (cód_libro, ISBN, título, nombre_e)
EDITORIAL (nombre_e, dirección, ciudad, país)
© Belén Vela, Goyo Celada 2011
Con Dependencia en Identificación: la clave primaria de la entidad regular
pasa como parte de la clave primaria de la débil para su identificación.
ERwin. Relaciones.
Con Dependencia en Existencia: No se implementan en ERwin.
Se tratan como relaciones de no identificación(Regulares),
pero con restricciones de integridad (borrado en cascada, …)
18
© Belén Vela, Goyo Celada 2011
ERwin. Relaciones. Cardinalidades.
19
© Belén Vela, Goyo Celada 2011
En identificación:
En NO identificación: (además de las anteriores, se permiten
nulos en el lado de la entidad padre)
Uno a cero, uno o N
Uno a uno o N
Uno a cero o uno
Uno a exactamente N
P
Z
N
Cero o uno a exactamente N N
N a M (relaciones no específicas)
ERwin. Relaciones. Cardinalidades.
20
© Belén Vela, Goyo Celada 2011
PERSONA DEPARTAMENTO dirige
1:1
DNI
(1,1) (0,1)
cód_depto
ERwin. Relaciones 1:1.
21
DEPARTAMENTO (cód_depto,..., DNI_director)
PERSONA (DNI, nombre, apellidos, dirección ...)
PADRE HIJO
© Belén Vela, Goyo Celada 2011
Para presentar el Rol de una relación: Verb Phrase
Padre Hijo
ERwin. Relaciones.
22
© Belén Vela, Goyo Celada 2011
Siempre a partir del modelo FÍSICO.
ERwin. Generación de Código SQL.
En Other Options, deseleccionar todo.
© Belén Vela, Goyo Celada 2011
LIBRO (cód_libro, ISBN, título, nombre_e)
EDITORIAL (nombre_e, dirección, ciudad, país)
LIBRO EDITORIAL publica
1:N
cód_libro nombre_e
(0,n) (1,1)
ERwin. Relaciones 1:N.
23
© Belén Vela, Goyo Celada 2011
ERwin. Relaciones 1:N.
24
LIBRO EDITORIAL publica
1:N
cód_libro nombre_e
(0,n) (0,1)
© Belén Vela, Goyo Celada 2011
ERwin. Relaciones 1:N.
25
LIBRO EDITORIAL publica
1:N
cód_libro nombre_e
(1,n) (1,1)
© Belén Vela, Goyo Celada 2011
Entidad Débil
Entidad Regular
LIBRO
EJEMPLAR
cód_libro
tiene ID
ERwin. Dependencia en Identificación.
26
© Belén Vela, Goyo Celada 2011
PERSONA PROPIEDAD tiene
N:M
DNI cód_propiedad
(1,n) (0,n)
ERwin. Relaciones N:M.
27
© Belén Vela, Goyo Celada 2011
Resolución: Creación de una nueva entidad
dependiente en identificación (propagando claves).
ERwin. Relaciones N:M.
28
© Belén Vela, Goyo Celada 2011
PERSONA LIBRO Presta
N:M
DNI Título
(1,n) (0,n)
Fecha
Resolución: Anticipar la transformación de la
interrelación a nivel lógico e incluir el atributo en la
“entidad/tabla” resultante.
ERwin. Relaciones Binarias con Atributos.
29
© Belén Vela, Goyo Celada 2011
AUTOR LIBRO Escribe
N:M:N DNI
Título
(1,n) (0,n)
EDITORIAL
Nombre_E
(0,1)
ERwin. Relaciones Ternarias.
30
© Belén Vela, Goyo Celada 2011
• Anticipar la transformación de la interrelación a nivel lógico. Hay
que tener en cuenta las cardinalidades.
Sólo se permiten relaciones binarias.
Resolución: Creación de una nueva entidad dependiente en
identificación (propagando claves).
ERwin. Relaciones Ternarias.
31
© Belén Vela, Goyo Celada 2011
Un atributo multivaluado en ERWin se representa
mediante una tabla.
ERwin. Atributos Multivaluados.
16
PERSONA DNI
Nombre
Apellidos
Teléfono
TELÉFONO (núm_teléfono, DNI)
PERSONA (DNI, nombre, apellidos)
© Belén Vela, Goyo Celada 2011
La entidad padre coincide con la entidad hija.
Obligatoriamente será una interrelación de tipo NO IDENTIFICACIÓN.
SOCIO
núm_socio
Avala
(0,n)
(1,1)
ERwin. Relaciones Reflexivas.
1:N
32
© Belén Vela, Goyo Celada 2011
SOCIO
núm_socio
Avala
(0,n)
(1,1)
CREATE TABLE SOCIO (
núm_socio CHAR(18) NOT NULL,
nombre CHAR(18) NULL,
apellidos CHAR(18) NULL,
PRIMARY KEY (núm_socio),
FOREIGN KEY (núm_socio) REFERENCES SOCIO);
ERwin. Relaciones Reflexivas.
33
© Belén Vela, Goyo Celada 2011
CREATE TABLE SOCIO (
núm_socio CHAR(18) NOT NULL,
avalista CHAR(18) NOT NULL,
nombre CHAR(18) NULL,
apellidos CHAR(18) NULL,
PRIMARY KEY (núm_socio),
FOREIGN KEY (avalista) REFERENCES SOCIO);
ERwin. Relaciones Reflexivas.
34
© Belén Vela, Goyo Celada 2011
Jerarquías: Cuando cada subtipo de la entidad
representa un subgrupo de un supertipo y existe un
atributo discriminador. Pueden ser parciales o
totales.
TOTAL PARCIAL
ERwin. Jerarquías.
35
© Belén Vela, Goyo Celada 2011
PROPIEDAD
CASA
Código
Tipo
1
2
ERwin. Jerarquía Total.
36
© Belén Vela, Goyo Celada 2011
PROPIEDAD
TERRENO
Código
Tipo
CASA
1
2
ERwin. Jerarquía Parcial.
37
© Belén Vela, Goyo Celada 2011
ERwin. Atributos Opcionales.
¿NULL / NOT NULL?
38
© Belén Vela, Goyo Celada 2011
ERwin. Reglas de Validación.
39
© Belén Vela, Goyo Celada 2011
ERwin. Reglas de Validación.
40
© Belén Vela, Goyo Celada 2011
ERwin. Valores por Defecto.
41
© Belén Vela, Goyo Celada 2011
ERwin. Dominios.
42
1
2
3
© Belén Vela, Goyo Celada 2011
ERwin. Dominios.
43
© Belén Vela, Goyo Celada 2011
ERwin. Dominios.
44
© Belén Vela, Goyo Celada 2011
Siempre a partir del modelo FÍSICO.
ERwin. Generación de Código SQL.
45
En Other Options, deseleccionar todo.
© Belén Vela, Goyo Celada 2011
ERwin. Opciones de Generación.
46
• Filter
• Preview, vista preliminar.
• Print, imprime el esquema.
• Report, permite guardar el esquema como .sql
• Generate, generación del esquema solicitando
conexión a un esquema de Base de Datos
Recommended