Sei sulla pagina 1di 16

HERRAMIENTA CASE: ERWIN

TALLER DE BASE DE DATOS 2009 I

UNFV - FIEI

Introduccin Este breve tutorial explica el proceso de crear un modelo de datos utilizando ERWIN. Esto no explicar todos los aspectos de ERWIN, pero si lo mnimo necesario para crear y usar los modelos de datos para esta clase. Esto consiste en tres puntos principales: 1 - Creacin de un modelo de datos bsico (modelo de datos Conceptual). 2 - Creacin de un esquema de base de datos. 3 - Creacin de la base de datos. Para la creacin del diagrama partiremos del siguiente diagrama de E-R. (1,N) N:M (1,N)

EMPLEADO
(1,1) 1:1 (1,N)

Inspeccion a trabaja
1:N

PROPIEDAD
(0,N)

Es un
(0,1)

gestion a
(1,1) (1,1)

1:N

(0,1)

GERENTE

SOCIO

OFICINA

Empleado (Emp_num, Emp_nom, Emp_apel, Emp_direcc, Emp_provincia, Emp_ciudad, Emp_CP, Emp_telef ,Emp_fax, Ofi_num). Oficina (Ofi_num, Ofi_direcc, Ofi_provincia, Ofi_CP, Ofi_nombre, Ofi_telef, Ofi_fax) Propiedad (Prop_num, Prop_direcc, Prop_provincia, Prop_tipo, Prop_precio, Ofi_num) Inspecciona (Emp_num, Prop_num, Insp_fecha, Insp_coment) Gerente (Emp_num, Ger_salar, Ger_descuento) Socio (Emp_num, Soc_tasa_hora) 1 - La creacin de un modelo bsico de datos Abrimos el programa y nos encontramos un primer cuadro de dilogo "ModelMart Connection Manager". Simplemente cancelamos. El siguiente cuadro de dialogo nos pedir elegir entre la creacin de un nuevo modelo, o la apertura de un modelo existente, como muestra en la Figura 1. Para este caso como creamos un nuevo modelo escogemos Create a new model.

Figura 1: Crear un nuevo modelo El siguiente cuadro de dilogo, mostrado en la Figura 2, nos pedir elegir la plantilla para crear el nuevo modelo. En este punto, podemos asociar el modelo con un sistema de administracin de bases de datos, como Microsoft Access , Oracle, DB2, etc. Tendremos la oportunidad de cambiar esta opcin ms tarde, pero por el momento elegimos Microsoft Access. Tambin, elegimos Lgico/Fsico (Logical/Physical) como el nuevo tipo modelo. Esta opcin nos permitir cambiar fcilmente entre un modelo lgico (Diagrama de ER) y un modelo fsico (esquema de base de datos).

Figura 2: Seleccin de un modelo

ERWIN mostrar ahora la ventana principal en la cual se realizar la mayor parte del diagrama, como muestra la figura 3. El lugar de trabajo consiste en dos partes principales. A la izquierda est el navegador, que muestra una jerarqua de artculos, como entidades, dominios y reas. A la derecha la parte de diseo , que mostrar el diagrama de ER. Cuando creamos objetos estos aparecern en esta parte.

Figura 3: El lugar de trabajo de ERWIN

Figura 3a:Barra de menus Menu File: Dentro de este menu se encuentran la opciones de crear un nuevo diagrama, abrir, guardar, imprimir, exportar e importar. Menu Edit: Copiar un elemento del diagrama, cortar, pegar y seleccionar todo. Menu View: Se seleccionan las barras de menu que queremos tener activas. Menu Format: Varias opciones, las ms relevantes son: -> Display level: Permite ver las entidades del diagrama de distintos modos. -> Entity display: Varias opciones para las entidades como: mostrar identificador de la clave ajena, dominios, identificador de clave primaria, migrar clave ajena... -> Relationship display: varias opciones para la relacin como ver el verbo de la relacion, la cardinalidad, la integridas referencial.... Menu Model: Permite ver las propiedades de las relaciones, atributos, entidades, crear dominios.... Menu Tools: ->Reverse engineer: esta opcion permite pasar el modelo lgico a uno fsico. Menu Window: Varias opciones para ver las ventanas de distintos modos. Menu Help: Manual de ayuda.

9 10

11

1234567891011-

Nuevo. Abrir. Guardar. Imprimir. Buscar y crear informe. Ver diagrama a nivel de entidad. Ver diagrama a nivel de atributo. Ver diagrama a nivel de definicin. Quitar zoom. Dar zoom. Cambiar entre modelo fsico y lgico 1 2 3 4 5 6 7 8 9/ 10 /11 /12 /13/14

15 123456789101112131415Tipo de fuente. Tamao fuente. Negrita. Cursiva. Subrayado. Color de fuente. Color de fondo. Color de lnea de entidad. Seleccionar. Crear entidad. Cread subtipo. Relacin 1:N identificada. Relacin N:N. Relacin 1:N no identificada. Dibujar figuras.

Ajuste de Preferencias ERWIN puede acomodar varios datos que modelan las anotaciones y las convenciones. Antes de comenzar estableceremos ciertas preferencias: Menu Format->Entity Display -> activamos Primary Key Designator. Esto nos mostrar al lado de la clave primaria el icono de una llave. Menu Format->Entity Display -> desactivamos Foreign Key Designator (FK). No mostrar la clave ajena (FK). Menu Format->Entity Display -> desactivamos Show Migrated Attributes. Esto al realizar la relacin entre dos entidades no migrar la clave primaria de la primera entidad y no la pondr como clave ajena en la segunda. Menu Format->Relationship Display -> activamos Verb Phrase. Permite escribir un verbo en la relacin. Adems, podemos elegir entre dos anotaciones diferentes de diagramas E-R. Model->Model Properties para ver la ventana mostrada en la Figura 3b:

Figura 3b: Eleccin de anotacin Creacin de una Entidad Para crear una nueva entidad, hacemos clic sobre el icono de entidad ( ) sobre la barra de herramientas, o click derecho sobre Entities en el navegador. Si pinchamos sobre el icono de entidad, entonces deberemos hacer click sobre la zona de diseo en donde queremos que aparezca la entidad, como muestra la Figura 4. Vemos que el nombre para la entidad es E/x, donde x es algn nmero (2 en este caso). Al pinchar sobre la entidad vemos las tres partes principales de esta: el nombre de la entidad, el atributo(s) clave primaria, y el atributo (s) clave no primaria. En general, para modificar una de estas tres partes de la entidad pulsaremos la tecla de tabulacin para situarnos en la parte que deseamos modificar.

Figura 4: Una nueva entidad Agregando los atributos Una vez cambiado el nombre (en nuestro caso EMPEADO) pulsamos de nuevo tabulador, y nos situaremos en la parte de clave primaria, Emp_Num en nuestro caso, como muestra la Figura 6. Vemos que debido a las preferencias que elegimos anteriormente (Primary Key Designator), antes del nombre del atributo aparece el icono de una llave que nos indica que es la clave primaria. Pulsamos tabulador una vez ms y aadimos el resto de atributos no primarios.

Figura 6: La entidad de Empleado Vamos a repetir el proceso de creacin de entidad para las entidades y atributos que aparecen en la siguiente lista. Entidad Atributos Ofi_Num (pk) Ofi_direcc Ofi_ciudad Ofi_provincia Ofi_CP Ofi_nombre Ofi_telefono Ofi_Fax Entidad Atributos

OFICINA

INSPECCIN

Insp_fecha Insp_Comentario

Prop_ID (pk) Prop_Street Prop_City Prop_State GERENTE PROPIEDAD Prop_Type Prop_Baths Prop_Rooms Prop_MonthlyRent SOCIO

Ger_salar Ger_coche

Soc_tasa_horas

Notar que algunas entidades no tienen claves primarias (Gerente, Socio.Cuando realicemos las relaciones del diagrama, la naturaleza de las claves para estas entidades se har clara.

Figura 7: Las entidades

Creacin de Relaciones ERWIN permite la creacin de relaciones con tres clases bsicas de la conectividad: de uno a uno, uno a muchos", y muchos a muchos. Dentro de la categora uno a muchos, ERWIN nos permite que distinguir entre identificacin y no identificacin en relaciones de tipo uno a muchos. Relaciones "uno a muchos" - Relacin identificada Comenzaremos con dos relaciones, entre Inspeccin y Empleado y entre Inspeccin y Propiedad. La inspeccin est relacionada con Propiedad como con Empleado en una relacin de uno a muchos. Cada Inspeccin se emprende en una Propiedad; cada Propiedad puede someterse a muchas inspecciones. Cada Inspeccin es llevada a cabo por un Empleado; cada Empleado lleva a cabo muchas Inspecciones. Suponiendo que la regla del negocio vigente aqu est en que cada propiedad tiene a lo ms una inspeccin por da. Por esta razn, decimos que la relacin entre la Inspeccin y la Propiedad es un relacin de uno a mucho. Una relacin que se identifica se crea haciendo clic primero sobre el icono de relacin que se identifica ( ). Para crear la relacin pinchamos sobre la entidad padre (uno) y luego sobre la entidad hijo (muchos) Adems vemos que aparece mediante la anotacin escogida (Model->Model Properties) tres lineas al final de la linea indicando muchos y una linea continua que indica la identificacin, como vemos en la figura 8.

Figura 8: Relacin identificada Figura 9: Definicin de la relacin Notar que ERWIN ha proporcionado una etiqueta " R/1 "para la relacin, que no es muy provechosa. Presionamos dos veces el ratn sobre la relacin y se abrir una ventana en la cual podemos cambiar el nombre a la relacin. En los cuadros de texto podemos definir la etiqueta que se colocara sobre la relacin en lugar de R/1, tambin podremos definir la cardinalidad . Figura 9. Como antes, hacemos click sobre el icono, click en la entidad padre (empleado), y en la entidad hijo(inspeccin Presionamos dos veces sobre la relacin para abrir la ventana de definicin de relacin y rellenarlo como muestra figura 11. Proporcionamos un verbo significativo a la relacin, elegimos la cardinalidad y tenemos la opcin de indicar si se permiten valores nulos o no. Dada suceso de entidad de hijo (Inspeccin) tiene que ver con un suceso de la entidad padre (Empleado)?. En este caso s. Cada inspeccin debe ser realizada por un empleado, o no es considerado una inspeccin apropiada. La participacin de Empleado en la relacin es obligatoria.

Figura 10: Relacin no identificada Figura 11: Definicin de la relacin - Relacin no identificada La relacin entre Empleado y Oficina es algo diferente. Esta es una relacin de tipo uno a muchos, pero esta no se identifica, porque la clave primaria del Oficina no es parte de la clave primaria de la Empleado. Para tal relacin, debemos hacer clic sobre el icono de relacin que se no identifica ( ), que usa una lnea discontinua en vez de una lnea continua. Cada empleado es adjudicado a una y slo una oficina, y cada oficina tiene a uno o varios Empleados. En esta relacin uno a mucho, la oficina es la entidad padre y el empleado es la entidad hijo.Ya que la clave primaria de empleado no incluye la clave primaria del oficina, esta es una relacin que se no identifica. Figura 12.

Figura 12: Relacin no identificada

Figura 13: Relacin que se no identifica con participacin obligatoria

La cardinalidad indica que cada oficina tiene que ver con uno o varios (pero no cero) empleados. El Tipo de relacin indica que esta es una relacin que se no identifica, y que no se permiten nulos. En otras palabras, cada empleado debe tener que ver con una sola oficina. Figura 13. Completamos las relaciones creando una relacin entre oficina y propiedad en la cual cada oficina maneja cero, una, o ms propiedades, y cada propiedad es manejada por una y slo una oficina. Figura 12.

Subtipos y Supertipos Hay dos clases de empleados entre los que deseamos distinguir: gerentes y socios. Cada una de estas dos clases de empleados tiene todas las propiedades del Empleado, pero tiene adems un pequeo nmero de atributos especficos. Slo los gerentes tienen un sueldo y una concesin de coche. Slo los socios tienen una tasa por hora. Podemos especificar que Gerente y Socio son subtipos del Empleado. Para hacer esto, usaremos el icono de subtipo ( ). Indicar que el Gerente es un subtipo de Empleado. Hacemos click primero sobre el icono de subtipo, luego sobre el supertipo (Empleado), luego sobre el subtipo (Gerente). Para incluir al socio como un subtipo, hacemos click otra vez sobre el icono de subtipo. Ahora, en vez de hacer clic sobre el supertipo otra vez, haga click sobre el icono de subtipo en el diagrama entre empleado y gerente y seguidamente en socio. Figura 14.

Figura 14: Diagrama final 2 - Creacin de un esquema de base de datos Ahora crearemos un esquema de base de datos basado en el diagrama creado anteriormente Esto consta de dos partes principales. Primero, aseguramos que todas las entidades (fuertes) fundamentales tienen una clave primaria. Segundo, definir los dominios para cada atributo. Uno de los rasgos atractivos de los dominios, es que los dominios pueden ser compartidos por ms de un atributo. En un diagrama de E-R, nosotros podemos definir los dominios una vez, y aplicarlo a mltiples atributos. La ventaja de este es la coherencia a travs de atributos y facilidad del mantenimiento. Definiremos todos los dominios que necesitaremos en nuestro diagrama ,luego los aplicaremos a nuestros atributos. En el menu Model -> Domain Dictionary, y se nos presentar una venta como la figura 15.

Figura 15: Diccionario de dominios

Crearemos primero un nuevo dominio que podremos aplicar a identificadores numricos que usaremos, como Emp_num, Prop_num, y Ofi_num. Click sobre New para crear un nuevo dominio. Tecleamos el Cdigo como el nombre del dominio en el cuadro de texto de Logical name como muestra la Figura 16.

Figura 17 : Adjudicar un tipo de datos al nuevo dominio Figura 16: Nuevo dominio Volveremos a la ventana de Diccionario de dominio y veremos que un nuevo dominio, Codigo, ha sido creado, como muestra la figura 17. Pulsamos sobre la etiqueta Datatype, y elegimos integer como Datatype para este dominio. A continuacin creamos otro dominio para provincia como char(2). Ahora tenemos que especificar los cdigos de provincia que constituyen valores vlidos para el dominio. Click sobre los puntos suspensivos que aparecen a la derecha del cuadro llamado Valid y veremos una ventana en la cual podemos crear reglas de validacin como muestra la Figura 18. Crearemos una nueva regla de validacin para el dominio estado. Click sobre New y lo denominamos Cdigos de provincia y aceptamos. Volveremos a la ventana de las Reglas de la Validacin. Aqu, hacemos click en Valid values list y comenzamos a teclear cdigos estatales vlidos en la primera columna de Valor Vlida. Figura 19.

Figura 18: Reglas de Validacin

Figura 19: Valores validos del dominio

Repetiremos el proceso para el resto de dominios que se detallan a continuacin: DOMINIO NOMBRE DIRECC CIUDAD CP TELEFONO SALARIO DATATYPE REGLA DE VALIDACIN CHAR(20) CHAR(100) CHAR(50) CHAR(10) CHAR(15) DECIMAL(9,2) Crear una nueva regla de validacin con un valor Mnimo = 0 COMENTARIO CHAR(255) TIPO CHAR(25) Crear una nueva regla de llamada el Tipo de Propiedad con una lista de valores vlidos: Casa, Apartamento, Duplex, Comercial FECHA FECHA PRECIO INTEGER Crear una nueva regla llamada no nmero entero negativo con un valor Mnimo = 0 NUMERO ENTERO NO INTEGER Crear un nuevo validan la regla llamada nmero entero no NEGATIVO negativo con un valor Mnimo = 0

Aplicacin de dominios a atributos Una vez creados los dominios debemos asociarlos a sus atributos correspondientes. ATRIBUTO Emp_num Emp_nom Emp_apel Emp_calle Emp_ciudad Emp_provincia Emp_CP Emp_telefono Emp_Fax Prop_num Prop_calle Prop_ciudad Prop_provincia Prop_CP Prop_tipo Prop_precio Prop_habitaciones DOMINIO Codigo Nombre Nombre Calle Ciudad Estado Zipcode Telfono ATRIBUTO Ofi_num Ofi_calle Ofi_CP Ofi_nombre Ofi_telefono Ofi_fax Insp_fecha Insp_comentario DOMINIO Codigo Calle Zipcode Nombre Telfono Fax Fecha Comentario Dinero Dinero Dinero

Telfono Ger_salar Codigo Ger_coche Calle Soc_tasa_hora Ciudad Estado Zipcode Tipo de Propiedad Dinero Numero entero no negativo

Para ello presionamos dos veces el ratn sobre una de las entidades en el diagrama. Veremos una lista de atributos en la izquierda, y una lista de dominios sobre el lado derecho. Asociamos un dominio con un atributo pinchando primero sobre el atributo, luego haciendo click sobre el dominio a asociar. No recibiremos ningn mensaje informativo adicional de que esta asociacin ha sido hecha. Figura 20.

Figura 20: Asociacin de un dominio con un atributo Finalmente activamos las propiedades que desactivamos al comienzo. Conversin de un Diagrama de E-R en un Esquema Relacional Finalmente, para transformar el diagrama de E-R lgico en un esquema Relacional fsico, simplemente elegimos Fsico en vez de Lgico en el cuadro combinado () en lo alto de la ventana como muestra la figura 21.

Figura 21: Modelo Fsico del Esquema Relacional

3 - Creacin de la base de datos. Ahora crearemos una base de datos fsica basada en el esquema relacional desarrollado anteriormente. Este proceso consta de varias partes. Primero, comprobaremos nuestro esquema relacional para asegurarnos que todos los tipos de datos son correctos. Segundo, crearemos una base de datos de Access

vaca para tener nuestra base de datos. Tercero, utilizaremos ERWIN para engendrar un conjunto de tablas dentro de la base de datos que se corresponde a nuestro esquema relacional. Una vez creada la base de datos en blanco en Access debemos ir al menu Tools->Forward Engineer/Schema Generation (En modo Physical). Figura 22

Figura 22: Generar esquema Pusltamos en generar y veremos una nueva ventana. Tecleamos ADMIN como User Name, y en Browse buscamos la base de datos que hemos creado previamente. Despus de esto pulsamos en Connect. Figura 23.

Figura 23: Conexin con la base de datos

Si todo va bien, veremos una ventana indicando los resultados de la generacin de esquema. Figura 24.

Figura 24: Esquema generado Finalmente abrimos la base de datos de Access que creamos antes y verificamos que la base de datos ha sido creada acorde al esquema de E-R . Figura 25.

Figura 25: Base de datos

Potrebbero piacerti anche