Download - Manual de Erwin
ERWIN
Herramienta CASE para el modelado de Bases de Datos
2Grupo Sintonía
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
3Grupo Sintonía
ERWIN DABD
Componentes del diagrama
• Convención IDEF1X• Componentes
– Entidades
– Interrelacciones
– Cardinalidades
– Reglas de validación
4Grupo Sintonía
ERWIN DABD
Componentes del diagrama• Entidades y atributos
• Interrelaciones: asociaciones entre entidades
nombre
Atributos clave
Atributos NO clave
nombre
Atributos clave
Atributos NO clave
nombre
Atributos clave
Atributos NO clave
interrelación
5Grupo 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.
6Grupo Sintonía
ERWIN DABD
Entidades1.- Independientes: no dependen de ninguna otra
entidad para su identificación.
2.- Dependientes: dependen de una o más entidades para su identificación.
nombre
Clave
Datos
nombre
Clave
Datos
7Grupo Sintonía
ERWIN DABD
Atributos1.- 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)
8Grupo Sintonía
ERWIN DABD
Atributos5.- 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.
9Grupo Sintonía
ERWIN DABD
Interrelaciones1.- En Identificación: la clave primaria de la entidad padre como parte
de la clave primaria de la hija para su identificación.
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
Clave-padre
n-hija
Clave-padre (FK)Clave-hija
n-padre
Clave-padre
n-hija
Clave-padre (FK)
Clave-hija
Frase verbal
Frase verbal
Frase inversa
Frase inversa
10Grupo 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
Frase verbal
Frase inversa
Segunda entidad
11Grupo 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.
Atributo discriminador Atributo discriminador
Presentes todas las categoríasNo todas las categorías presentes
CompletaIncompleta
Padre genérico Padre genérico
Categoría 1 Categoría 1Categoría N Categoría N
12Grupo Sintonía
ERWIN DABD
Interrelaciones. Cardinalidades• En identificación:
• En NO identificación: (además de las anteriores se permiten nulos en el lado derecho)
Una a cero o más
Una a una o más
Una a cero o una
Una a exactamente N
P
Z
N
Cero o una a exactamente NN
N a M (relaciones no específicas)
13Grupo 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
14Grupo 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
DNI
Nom_persona
Dirección
ID_dirección
Detalles_dir
Dirección-uso
ID_direccion (FK)DNI (FK)tipo_uso
Fecha_uso
Puede_usar Usado_por
15Grupo 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
ID_comp
Nombre_comp
Cliente
ID_cli
Nombre_cli
Contrato
ID_comp (FK)ID_prod (FK)ID_cli (FK)
Detalles
vende firma
Producto
ID_prod
Nombre_prod
es_comprado
16Grupo 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
ID_comp
Nombre_comp
Cliente
ID_cli
Nombre_cli
Contrata
ID_comp (FK)ID_cli (FK)
Fecha
contrata Es_contratado
17Grupo Sintonía
ERWIN DABD
Atributos multivaluados• Un atributo multivaluado en erwin se representa
mediante una tabla.
Tiene
Persona Teléfono
DNI: Char (18)
Nombre:char(18)Direc: char (18)
Número:Char(18)DNI:char(18)
18Grupo Sintonía
ERWIN DABD
Herramienta• La herramientea consiste en un ejecutable
(MMOPN32.exe)
19Grupo Sintonía
ERWIN DABD
ToolBox y ToolBar
Selección de entidades y relaciones
Manipulación de datos
Añadir Interrelaciones
Añadir Entidad
Añadir Jerarquía
Añadir Texto
Crear Informe
Ver Entidades
Ver Entidades y Atributos
Ver definiciones
Funciones de zoomGenerar esquema
Seleccionar servidor
Comparar el modelo físicoy sincronizar
20Grupo Sintonía
ERWIN DABD
ToolBox
Modelo lógico
Modelo físico
Entidad
JerarquiaTexto
ManipulaciónInterrelacciones
Vistas
21Grupo 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)
22Grupo Sintonía
ERWIN DABD
Entidades
23Grupo 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
24Grupo Sintonía
ERWIN DABD
Atributos. Tipos
25Grupo Sintonía
ERWIN DABD
Atributos PK
26Grupo Sintonía
ERWIN DABD
Atributos AK
27Grupo 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.
28Grupo Sintonía
ERWIN DABD
Relaciones. Características
29Grupo 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
30Grupo Sintonía
ERWIN DABD
Relaciones. Rolename
31Grupo Sintonía
ERWIN DABD
Jerarquías
32Grupo Sintonía
ERWIN DABD
Modelo Físico. Vistas
33Grupo Sintonía
ERWIN DABD
M.F. Reglas Validación (I)
34Grupo Sintonía
ERWIN DABD
M.F. Reglas Validación (II)
35Grupo Sintonía
ERWIN DABD
M.F. Reglas Validación (III)
36Grupo Sintonía
ERWIN DABD
Disparadores
37Grupo 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
38Grupo Sintonía
ERWIN DABD
Restricciones de integridad
39Grupo Sintonía
ERWIN DABD
Opciones del script• Una vez elegido el SGBD (en nuestro caso Oracle)
40Grupo 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.
41Grupo 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
42Grupo 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
43Grupo 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
44Grupo 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
45Grupo 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.
46Grupo 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
47Grupo 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.
48Grupo 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.
49Grupo 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
50Grupo 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
51Grupo 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.
52Grupo 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
53Grupo 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.
54Grupo 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.
55Grupo 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
56Grupo 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