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

ERWIN

Herramienta CASE para el modelado de


Bases de Datos
ERWIN DABD

Objetivo
• Herramienta CASE para 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

2
Grupo Sintonía
ERWIN DABD

Componentes del diagrama

• Convención IDEF1X
• Componentes
– Entidades
– Interrelacciones
– Cardinalidades
– Reglas de validación

3
Grupo Sintonía
ERWIN DABD

Componentes del diagrama


• Entidades y atributos
nombre
Atributos clave

Atributos NO clave

• Interrelaciones: asociaciones entre entidades


nombre nombre
Atributos clave Atributos clave
interrelación
Atributos NO clave Atributos NO clave

4
Grupo Sintonía
ERWIN DABD

Comp. del diagrama (cont.)


• Dominios
– Lógico: significado de las entidades, atributos, etc. y
relaciones entre ellas.
– Físico: valores de los mismos, tipos de datos (char,
boolean, …), dominios de validación, valores máximos
y mínimos de los datos, …, y vistas.

5
Grupo Sintonía
ERWIN DABD

Entidades
1.- Independientes: no dependen de ninguna otra
entidad para su identificación.
nombre
Clave

Datos

2.- Dependientes: dependen de una o más entidades


para su identificación.
nombre
Clave

Datos

6
Grupo Sintonía
ERWIN DABD

Atributos
1.- Clave primaria (PK): atributo o grupo de
atributos elegido como el único identificador de
una entidad.
2.- Clave candidata (CK): atrib. o grupo de atrib.
que pueden ser elegidos como PK.
3.- Clave ajena (FK): clave primaria de otra
entidad.
3.- Atrib. no clave: no puede ser elegido como PK.
4.- Atrib. derivado: calculado a partir de otros
atribs. (no necesita ser almacenado físicamente)
7
Grupo Sintonía
ERWIN DABD

Atributos
5.- Role-name.atributo (FK): Nombre del role de
un atributo (ej. Reflexivas). Se toma un nuevo
nombre para la FK que tenga una connotación con
su uso
6.- Grupo (c1,c2,c3): El atributo es un grupo y se
listan los componentes
7.- Clave ajena unificada (fk1,fk2,fk3)(FK):La
lista de claves se unen en una simple FK
8.- Derivados (D): Cuando un atributo se calcula a
partir de otros.
8
Grupo Sintonía
ERWIN DABD

Interrelaciones
1.- En Identificación: la clave primaria de la entidad padre como parte
de la clave primaria de la hija para su identificación.
n-padre n-hija
Clave-padre Frase verbal Clave-padre (FK)
Clave-hija
Frase inversa

2.- En NO Identificación: la clave primaria de la entidad padre como


parte del área de datos de la hija (no en el área de claves.

n-padre n-hija
Frase verbal
Clave-padre Clave-padre (FK)

Frase inversa Clave-hija

9
Grupo Sintonía
ERWIN DABD

Interrelaciones
• En existencia: No se implementan en ERWIN. Se tratan como de no
identificación, pero con restricciones de integridad (borrado en
cascada, …)
• No específicas: No hay claves que contribuyan a la relación, pero
algunas de las claves de la primera están relacionadas con la segunda.

Primera entidad Segunda entidad

Frase verbal

Frase inversa

10
Grupo Sintonía
ERWIN DABD

Interrelaciones
• Jerarquías: Cuando cada categoría de la entidad
representa un subgrupo de un padre genérico y existe un
atributo discriminador. Pueden ser completas e
incompletas.

Padre genérico Padre genérico

Atributo discriminador Atributo discriminador


Incompleta
Completa
No todas las categorías presentes
Presentes todas las categorías

Categoría 1 Categoría N Categoría 1 Categoría N

11
Grupo Sintonía
ERWIN DABD

Interrelaciones. Cardinalidades
• En identificación:
Una a cero o más
P Una a una o más
Z
Una a cero o una
N
Una a exactamente N
N a M (relaciones no específicas)

• En NO identificación: (además de las anteriores se


permiten nulos en el lado derecho)
N
Cero o una a exactamente N

12
Grupo Sintonía
ERWIN DABD

Interrelaciones Reflexivas
• Donde la entidad padre coincide con la entidad hija
• Es obligatoriamente una interrelación de tipo NO
IDENTIFICACIÓN.
• Resolución:
– El nombre de la clave ajena (FK) cambian en el área de datos
(owner-id.clave).
– Es opcional (cardinalidad mínima a 0 => diamante)
nombre
Clave
Otros atributos
...
Owner-id.Clave

13
Grupo Sintonía
ERWIN DABD

Interrelaciones No Específicas
• Interrelaciones N:M
• Resolución: Creación de una nueva entidad dependiente en
identificación (propagando claves). PE:

Persona Dirección
DNI ID_dirección
Nom_persona Detalles_dir

Dirección-uso
Puede_usar Usado_por
ID_direccion (FK)
DNI (FK)
tipo_uso
Fecha_uso 14
Grupo Sintonía
ERWIN DABD

Interrelaciones n-arias
• Sólo se permiten relaciones binarias
• Resolución: Creación de una nueva entidad dependiente en
identificación (propagando claves). PE:

Compañía Producto Cliente


ID_comp ID_prod ID_cli
Nombre_comp Nombre_prod Nombre_cli

es_comprado
Contrato
vende firma
ID_comp (FK)
ID_prod (FK)
ID_cli (FK)
Detalles 15
Grupo Sintonía
ERWIN DABD

Atributos en Interrelaciones
• Resolución: Creación de una nueva entidad (nombre de la
interrelación) dependiente en identificación (propagando
claves de las entidades asociadas). PE:

Compañía Cliente
ID_comp ID_cli
Nombre_comp Nombre_cli

Contrata
contrata Es_contratado
ID_comp (FK)
ID_cli (FK)
Fecha
16
Grupo Sintonía
ERWIN DABD

Atributos multivaluados
• Un atributo multivaluado en erwin se representa
mediante una tabla.
Persona Teléfono

DNI: Char (18) Número:Char(18)


Tiene
Nombre:char(18) DNI:char(18)
Direc: char (18)

17
Grupo Sintonía
ERWIN DABD

Herramienta
• La herramientea consiste en un ejecutable
(MMOPN32.exe)

18
Grupo Sintonía
ERWIN DABD

ToolBox y ToolBar

Crear Funciones de zoom


Informe Generar esquema
Ver Ver
Entidades definiciones

Ver Seleccionar servidor


Entidades Añadir Entidad
y
Atributos Selección de Añadir Jerarquía
entidades y
relaciones
Añadir Texto

Manipulación
de datos Comparar el modelo
Añadir
Interrelaciones físico
y sincronizar

19
Grupo Sintonía
ERWIN DABD

ToolBox
Entidad
Jerarquia
Texto

Modelo lógico
Manipulación
Interrelacciones

Vistas

Modelo físico

20
Grupo Sintonía
ERWIN DABD

Entidades
• Construir entidades
– Erwin toolbox
– Editor de entidad (Nombre, notas, Definición)
• Editor de definición de entidad
– Dos veces sobre entidad (anotar/editar definición,
consultar definición y cambiar nombre)

21
Grupo Sintonía
ERWIN DABD

Entidades

22
Grupo Sintonía
ERWIN DABD

Atributos
• Usar el editor entidad-atributo
– Construir atributo de clave primaria
– Construir atributo no clave
– Construir clave alternativa
– Construir una clave invertida
– Navegar a otras entidades
– Editor de definición de atributos ( generar definiciones,
notas, consultar y definir atributos)
• Editar sobre pantalla
– Añadir atributos a una entidad

23
Grupo Sintonía
ERWIN DABD

Atributos. Tipos

24
Grupo Sintonía
ERWIN DABD

Atributos PK

25
Grupo Sintonía
ERWIN DABD

Atributos AK

26
Grupo Sintonía
ERWIN DABD

Interrelaciones
• Construir la relación
– Seleccionar el tipo de relación deseada
– Seleccionar padre
– Seleccionar hijo
– Relacionar la flecha
• Posicionarla
– Se puede ajustar por origen, destino, manejar la
relación
• Nombrar la relación
– Con el botón derecho en la línea, editor de la relación.

27
Grupo Sintonía
ERWIN DABD

Relaciones. Características

28
Grupo Sintonía
ERWIN DABD

Relaciones. Restricciones
• Establecer restricciones
– Segundo botón en la línea
– Editor relación
– Rolename/IR action
– En IR elegir para el padre y el hijo las restricciones de
borrado, inserción y modificación deseadas
• Para relaciones en identificación hay: restrict,
cascada, set null, set default, none
• Para relaciones en no identificación hay: restrict,
cascada, none
29
Grupo Sintonía
ERWIN DABD

Relaciones. Rolename

30
Grupo Sintonía
ERWIN DABD

Jerarquías

31
Grupo Sintonía
ERWIN DABD

Modelo Físico. Vistas

32
Grupo Sintonía
ERWIN DABD

M.F. Reglas Validación (I)

33
Grupo Sintonía
ERWIN DABD

M.F. Reglas Validación (II)

34
Grupo Sintonía
ERWIN DABD

M.F. Reglas Validación (III)

35
Grupo Sintonía
ERWIN DABD

Disparadores

36
Grupo Sintonía
ERWIN DABD

Generación del Script


• Una vez generado el modelo, se crea el script, dependiente
del SGBD.
• Pasos: Elección del modelo físico; Pinchar en:
Server> Target Server

37
Grupo Sintonía
ERWIN DABD

Restricciones de integridad

38
Grupo Sintonía
ERWIN DABD

Opciones del script


• Una vez elegido el SGBD (en nuestro caso Oracle)

39
Grupo Sintonía
ERWIN DABD

Opciones del script


• Las opciones de la primera línea son:
– Report (list box): Muestra el report actual, aunque se
puede elegir otro (pinchando)
– New: Abre un nuevo report y salva el actual con otro
nombre
– Rename: Cambia el nombre al report
– Delete: Borra el report seleccionado.

40
Grupo Sintonía
ERWIN DABD

Opciones del script


• Schema generation: Muestra en el recuadro las
opciones que se debe incluir para el SGBD. Las
opciones marcadas son:
– Referential Integrity: Da la opción de tener en control
en el borrado y modificación de tablas.
• PK: Hacer cumplir la identidad única de cada fila en cada tabla
• FK: Hacer cumplir la integridad referencial cuando la clave
borrada es ajena
• ON DELETE: Hacer cumplir la integridad referencial cuando
se borra una variable
• ON UPDATE: Hacer cumplir la integridad referencial cuando
se modifica una variable

41
Grupo Sintonía
ERWIN DABD

Opciones del script


• UNIQUE (AK): Una clave debe ser única
• SP_PRIMARY KEY: Incluir en el sistema procedimientos que
generan la clave primaria en cada tabla
• SP_FOREIGN KEY: Incluir en el sistema procedimientos que
generan la clave ajena
– Schema options: Controla el nivel del esquema de
opciones
• <PHYSICAL OBJECT> Incluir una definición de objeto físico
en el esquema
• CREATE PROCEDURE: Incluye un procedimiento de
almacenamiento del esquema
• DROP PROCEDURE: Incluye sentencias de borrado del
esquema

42
Grupo Sintonía
ERWIN DABD

Opciones del script


• DROP MACRO. Incluye sentencias de borrado de las macro
del esquema
• PRE_SCRIPT. Ejecuta pre-scripts sujetos a un esquema
después de que el esquema es generado PRE_SCRIOPT.
• POST_SCRIPT. Ejecuta post-scripts sujetos a un esquema
después de que el esquema es generado
• DISTINCT DATATYPE. Incluir sentencias CREAR
DISTINCT para cada tipo de usuario DB2/2 en el esquema. Se
pueden generar los usuarios en el editor de dominios.
• CREATE DOMAIN. Incluir sentencias de crear dominios para
cada usuario InterBAse o Rdb en el esquema. Se pueden
definir los usuarios en el editor de dominios
• CREATE DATATYPE. Incluir sentencias de crear
DATATYPE para cada usuario SQL en el esquema. . Se
pueden definir los usuarios en el editor de dominios
43
Grupo Sintonía
ERWIN DABD

Opciones del script


• TABLESPACE Incluir sentencias de Crear tablespace en el
esquema
• ROLLBLACK SEG. Incluir sentencias crear rollback segment
en el esquema
• DATABASE. Incluir sentencias para crear database en el
esquema.
• SEGMENT. Incluir sentencias crear segment en el esquema
• CREATE DBSPACE. Incluir sentencias crear dbspace en el
esquema
• SP_ADDTYPE. Incluir sentencias de crear SP_ADDtype en
el esquema
• CREATE RULE. Incluir validación de definición en el
esquema
• CREATE DEFAULT. Incluye definición de variables por
defecto en el esquema 44
Grupo Sintonía
ERWIN DABD

Opciones del script


– Column option. Añade cláusulas adicionales al SQL
CREATE TABLE del esquema. Opciones:
• ATRIBUTTE INTEG. Incluye restricciones para cada
columna definida
• COLUMN CHECK. Incluye restricciones para cada columna
definida
• INTEGRITY/CHECK. Incluir para cada check de nivel de
columna restricciones en el esquema
• PHYSICAL ORDER. Preserva el orden físico de las columnas
tal y como genera el erwin el nuevo esquema
• SP_BINDRULE. Incluye un estado que obliga a la restricción
en la columna.
• SP_BINDEFAULT. Incluye un estado que obliga a la
restricción por defecto en la columna.
45
Grupo Sintonía
ERWIN DABD

Opciones del script


• VALIDATION: incluye reglas de validación por cada columna
• FIELDPROC/CHECK. Incluye un estado que obliga a la
restricción por defecto de la columna.
• INITIAL VALUE. Incluye un estado de asignación de
variables iniciales a la columna.
• COLUMN LABEL.Incluir una asignación de etiquetas a la
columna.
• LABEL. Incluir una asignación de etiquetas de columna.
• COLUMN HEADING. Incluir un estado de asignación de
título a la columna.
• CHECK CONSTR. Incluir una restricción para cada columna
definida.
• USE DOMAIN. Incluir la definición de usuario del dominio
de tipo de datos para la columna del esquema
46
Grupo Sintonía
ERWIN DABD

Opciones del script


• BETWEEN. Incluir la regla de validación para la columna
• TITLE. Incluir un estado de asignación de títulos a las
columnas
– TRIGGER option. Permite realizar la integridad
referencial seleccionando una más de las opciones:
• ERWIN GENERATED. Seleccionar esta opción para incluir
los disparadores IR en el esquema para todas las IR
– IR Type override. Seleccionar este para incluir cada uno de los
disparadores IR del tipo “No hacer caso” en el esquema para
todas las opciones IR.
– Relations override. Seleccionar esta opción para incluir cada uno
de los disparadores de relación “no hacer caso” en el esquema
para todas las opciones IR.

47
Grupo Sintonía
ERWIN DABD

Opciones del script


• USER DEFINED. Seleccionar para incluir la tabla de
disparadores en el sistema si no hay otra seleccionada
– IR Type override. Seleccionar este para incluir disparadores IR
del tipo “No hacer caso” en la tabla de disparadores del
esquema.
– Relations override. Seleccionar esta opción para incluir cada uno
de los disparadores de relación “no hacer caso” en la tabla de
disparadores del esquema.
– Table options. Permite especificar cuales son las
sentencias de definición de datos que se quieren utilizar
en la generación del esquema.
• CREATE TABLE. Incluye sentencias de crear tablas para cada
tabla seleccionada cuando se genera el esquema.
• ENTITY INTEGR. Incluye sentencias en SQL que crea
restricciones de reglas en cada tabla.
48
Grupo Sintonía
ERWIN DABD

Opciones del script


• DROP TABLE. Ejecuta sentencias de borrar tabla antes de
ejecutar las sentencias de crear tabla cuando el esquema es
generado. Se ejecuta un borrar tabla antes de un crear tabla
para cada tabla.
• INTEGRITY/CHECK. Incluye sentencias para cada
restricción y check de nivel de tabla en el esquema generado.
Se puede seleccionar cuales son las restricciones y check
generadas en el editor de reglas de validación.
• PHYSICAL STORAGE. Incluye objetos de almacenamiento
físico y parámetros del sistema
• TABLE CHECK. Incluye sentencias SQL para generar reglas
de restricción para cada tabla
• TABLE PRE_SCRIPT. Ejecuta pre-script sujeto a una tabla
inmediatamente después de generar la tabla

49
Grupo Sintonía
ERWIN DABD

Opciones del script


• TABLE POST_SCRIPT. Ejecuta post-script sujeto a una tabla
inmediatamente después de generar la tabla.
• VALIDPROC/CHECK. Incluye sentencias de restricción de
check para el nivel de tabla para DB2/MVS
• VALIDATION. Incluye reglas de validación asociadas con tablas
en el esquema como restricciones y checks y tablas. Solo es
válido cuando se elige generar un esquema PROGRESS 4GL.
• CREATE ALIAS. Incluye nombres de tablas de alias que se
definen en el esquema Erwin (Solo para DB/2, DB2/VMS)
• DROP ALIAS. Seleccionar para incluir sentencias de borrado de
nombres de la tabla de alias. Se ejecuta uno por cada alias
generado en el esquema.
• CREATE MACRO. Seleccionar para incluir macros de teradata
en el esquema
50
Grupo Sintonía
ERWIN DABD

Opciones del script


• DROP MACRO. Seleccionar para incluir sentencias que
borran previamente las Terada macros definidas
• CREATE SYNONYM. Seleccionar para incluir nombres de
tablas sinónimas en el esquema definido.
• DROP SYNONYM. incluye sentencias para borrar
previamente nombres de tablas sinónimas en el esquema
definido.
• CREATE PROCEDURE. Incluir procedimientos almacenados
que se definen en el esquema
• DROP PROCEDURE. Incluye sentencias que borran
previamente los procedimientos almacenados en el esquema.

51
Grupo Sintonía
ERWIN DABD

Opciones del script


– Statement format:Determina si el esquema incluye un
Create o un alter para cada clave primaria o ajena. Si la
tabla que requiere una nueva ya existe en la BBDD usar
la opción alter.
• CREATE/PK. Incluir una claúsula de clave primaria en una
create table
• ALTER/PK. Incluir una claúsula de clave primaria en una alter
table
• CREATE/FK. Incluir una claúsula de clave ajena en una create
table
• ALTER/FK. Incluir una claúsula de clave ajena en una alter
table

52
Grupo Sintonía
ERWIN DABD

Opciones del script


– View options. Permite tener control de las vistas del
esquema.
• CREATE VIEW. Incluir estados create view para cada vista
seleccionada en el esquema.
• DROP VIEW. Incluir estados drop view antes de ejecutar
create view cuando el esquema es generado. Se genera un drop
por cada create view.
• PRE-SCRIPT. Ejecuta pre-scripts sujetos a una vista antes de
generar la vista.
• POST-SCRIPT. Ejecuta post-scripts sujetos a una vista antes
de generar la vista.

53
Grupo Sintonía
ERWIN DABD

Opciones del script


– Other options. Permite soportar características
especiales para la selección del servidor:
• COMMENTS. Incluir comentarios en las tablas y columnas
generadas por Erwin
• CONSTRAINT NAME. Incluir nombres de restricciones en el
esquema.
• QUOTE NAMES. Insertar sobre las tabls y columnas marcas
de presupuesto del esquema
• OWNER: Incluir la tabla cliente en el estado CREATE
TABLE del esquema
• USE LABELS FOR LOGICAL NAMES. Incluir etiquetas
para tablas basadas en un nombre de entidad en el esquema.

54
Grupo Sintonía
ERWIN DABD

Opciones del script


• Filter. Tabla de dialogo del filtro, selecciona las
entidades que se quieren elegir en la subtarea
actual para la generación del esquema.
– TABLE POOL. Muestra el nombre de las tablas que no
han sido seleccionadas
– TABLE. Muestra las tablas seleccionadas
– TABLE FILTER Muestra las tablas seleccionadas en la
generación del esquema actual.
• PREVIEW. Se realiza un vista previa del esquema
• PRINT. Imprime el esquema

55
Grupo Sintonía
ERWIN DABD

Opciones del script


• REPORT. Salva el esquema como *.ers o *.sql
• GENERATE. Comienza el proceso de generación
del esquema. Erwin muestra el diálogo de
conexión que permite conectar erwin con el
catálogo del sistema en la bbdd.
• Vista previa del script:
– physical model, menu>task>forward
engineering/schema generation
– Se seleccionan las opciones
– Preview

56
Grupo Sintonía

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