0 оценок0% нашли этот документ полезным (0 голосов)
38 просмотров18 страниц
Este documento presenta los conceptos fundamentales de modelamiento de bases de datos, incluyendo entidades, atributos, claves, relaciones e implementación. El objetivo de la práctica descrita es aprender a identificar y modelar entidades y relaciones, y crear una base de datos usando ERWIN y SQL Server. Se provee una guía teórica detallada sobre estos temas clave de bases de datos.
Este documento presenta los conceptos fundamentales de modelamiento de bases de datos, incluyendo entidades, atributos, claves, relaciones e implementación. El objetivo de la práctica descrita es aprender a identificar y modelar entidades y relaciones, y crear una base de datos usando ERWIN y SQL Server. Se provee una guía teórica detallada sobre estos temas clave de bases de datos.
Авторское право:
Attribution Non-Commercial (BY-NC)
Доступные форматы
Скачайте в формате PDF, TXT или читайте онлайн в Scribd
Este documento presenta los conceptos fundamentales de modelamiento de bases de datos, incluyendo entidades, atributos, claves, relaciones e implementación. El objetivo de la práctica descrita es aprender a identificar y modelar entidades y relaciones, y crear una base de datos usando ERWIN y SQL Server. Se provee una guía teórica detallada sobre estos temas clave de bases de datos.
Авторское право:
Attribution Non-Commercial (BY-NC)
Доступные форматы
Скачайте в формате PDF, TXT или читайте онлайн в Scribd
UNJBG /ITEL /Carrera Tcnica de Analista - Programador
CURSO: Base de Datos I Periodo 2010- 3
.Prctica N 1 Pg. 1 de 18 PRACTICA 01: Modelamiento y creacin de bases de datos con el ERWIN 4.1 y MS SQL Server 2000 Objetivo: Aprender a: + Identificar entidades, atributos, interrelaciones y claves. + Construir los modelos conceptual, lgico y fsico de una base de datos con el ERWIN 4.1. + Creacin de una base de datos con el MS SQL Server 2000 + Resumen terico: Entidades, atributos, interrelaciones y claves Una entidad es cualquier objeto real o abstracto capaz de proporcionar informacin sobre un determinado proble- ma. Por ejemplo: Para administrar la parte acadmica de una academia de computacin e informtica consideramos las en- tidades: Profesor, Alumno, Curso, y Especialidad. Para administrar una videoteca (alquiler de videos) consideramos las entidades: Video, Ejemplar, Clien- te, Empleado y Boleta. Para administrar una empresa de transportes Qu entidades pueden considerarse? Toda entidad es distinguible de los dems por ciertas caractersticas fundamentales que se llaman atributos. La notacin es E (A 1 , A 2 ,, A n ) donde E es la entidad y los A i los atributos. Por ejemplo: Para las entidades de la academia. 4 Profesor (Cod_profesor, Apellido, Nombre, Sexo, Fecha_nacimiento, Grado_ttulo, DNI, Direccin, Telfono, Pago, Asesor) 4 Alumno (Cod_alumno, Apellido, Nombre, Sexo, Fecha_nacimiento, Direccin, Telfono, Foto, Especia- lidad_alumno, Condicin) 4 Curso (Cod_curso, Nombre, Sumilla, Horas, Precio, Prerrequisitos) 4 Especialidad (Especialidad_alumno, Descripcin) Una ocurrencia de entidad es cada uno de los posibles valores que puede tomar un caso concreto de la entidad. Por ejemplo 4 (AV101, VELASQUEZ SUAREZ, Alfredo, M, 30/04/1977, Maestra, 00524789, 28 de julio 178, 245789, 780, Si) es una ocurrencia de la entidad Profesor. 4 (BD02, Base de Datos I, Entidades, atributos, interrelaciones, 60, 60, BD01) es una ocurrencia de la entidad Curso. Las entidades pueden ser: 4 Fuertes: Cuando tienen autonoma propia y no dependen de ninguna otra entidad. Por ejemplo: Profe- sor, Alumno, Especialidad y Curso en el caso de la academia. Video, Cliente, Empleado y Boleta en el caso de la videoteca. 4 Dbiles: Cuando no tienen autonoma y su existencia se supedita a la existencia de otras entidades. Por ejemplo: Registro depende de la existencia de las entidades Alumno y Curso en el caso de la academia y Ejemplar que depende de Video en el caso de la videoteca. 4 Subcategora (subentidad): Cuando se clasifica una entidad en subentidades (subcategoras) es una de acuerdo a un atributo que se llama discriminante. Por ejemplo Alumno_Regular y Alumno_Libre son subcategoras de la entidad Alumno en el caso de la academia y el discriminante es el atributo Condi- cin. Para el caso de videoteca, Socio y Eventual son subcategoras de Cliente y el discriminante es Ti- po. Los atributos pueden ser: 4 Simples: Cuando no admiten subdivisin. Por ejemplo: Sexo, Fecha_nacimiento. 4 Compuestos: Cuando estn compuestos por subatributos. Por ejemplo: Datos_personales = (Apelli- do_paterno, Apellido_materno, Nombre, Edad); Direccin = (Ciudad, Centro_poblado, Manzana, Ca- lle, Nmero, Cdigo_postal). 4 Atmico: Cuando slo puede tomar un valor. Por ejemplo: Sexo slo puede tomar el valor Masculino o Femenino; Fecha_nacimiento slo puede tomar una nica fecha del calendario. 4 Multivaluado: Cuando puede tomar ms de un valor Por ejemplo: Telfono puede tomar los valores 244298 (telfono domiciliario), 883000- 3071 (telfono de trabajo) y 9314525 (telfono celular); Au- tor_libro puede tomar los valores Mario VARGAS LLOSA: La Ciudad y los Perros, La Casa Verde, Conversacin en la Catedral, La Guerra del Fin del Mundo, etc. UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
.Prctica N 1 Pg. 2 de 18 4 Derivados: Cuando sus valores se derivan de otros atributos. Por ejemplo: Promedio toma valores co- mo consecuencia de promediar los valores dePrctica, Examen y Trabajo. Y Observacin toma los va- lores Aprobado o Desaprobado segn Promedio sea mayor o igual a 11 y menor a 11. Una clave de una entidad E (A 1 , A 2 ,, A n ) es un conjunto minimal K de atributos de E que identifican de manera nica a una ocurrencia de la entidad E. Como hay varios conjuntos de atributos que cumplen la condicin de cla- ve, cada una de las posibles claves se llama clave candidata CK. Por ejemplo: Para la entidad Profesor (Cod_profesor, Apellido, Nombre, Sexo, Fecha_nacimiento, Grado_ttulo, DNI, Direccin, Telfono, Pago, Asesor): Cod_profresor, (Apellido, Nombre), DNI son claves candidatas. Una clave primaria o principal PK de una entidad E (A 1 , A 2 ,, A n ) es una clave candidata elegida por el tcnico para identificar de manera nica e inconfundible a una ocurrencia de la entidad E. Toda clave primaria es nica. Por ejemplo: Cod_profesor es una clave primaria de la entidad Profesor. Es mejor que (Apellido, Nombre) porque puede haber personas con el mismo nombre y apellido y mejor que DNI porque para ser profe- sor no se requiere necesariamente de este documento. Una clave fornea es un atributo (o combinacin de atributos) que contiene un valor que hace referencia a una instancia de otra entidad (en algunos casos puede ser la misma entidad) donde el atributo o combinacin de atri- butos es clave primaria. Formalmente podemos definirla como sigue: Sean E y F dos entidades y sea K un conjunto de atributos comunes a E y F y donde K es clave primaria de F. En- tonces diremos que K es una Clave fornea de E. E se llamaEntidad que referencia y F se llamaEntidad refe- renciada. Por ejemplo: Para Alumno (Cod_alumno, Ape_alumno, Nom_alumno, Sex_alumno, Fna_alumno, Dir_alumno, Tel_alumno, Fot_alumno, Esp_alumno, Condicin) tenemos que Clave Primaria =Cod_alumno y Clave For- nea =Esp_alumno porque Esp_alumno es clave primaria de Especialidad (Esp_alumno, Descripcin) Una interrelacin es una correspondencia bilateral entre entidades. Se denota por IR (E 1 : E 2 :E n ) donde E i es una entidad y n es el nmero de entidades que intervienen en la interrelacin y se llama grado de la interrelacin. Por el grado una interrelacin puede ser: Binaria: Si el grado n =2, Ternaria: Si el grado n =3, Unaria (Reflexiva): Si el grado n =1 y n-aria: Si el grado es n >3. Por ejemplo: Para la academia podemos definir las siguientes interrelaciones binarias: Dicta/ Es_dictada_por (Profesor : Curso) Est_matriculado_en/ Matricula_a (Alumno : Curso) Tiene / Tiene_una (Especialidad : Alumno) Y la relacin unaria Asesora_a / Es_asesorado_por (Profesor : Profesor) Las interrelaciones y sus cardinalidades pueden ser: De uno a muchos con identificacin (Identifying relationship) cuando la entidad su- bordinada necesita de la clave de la entidad padre para identificarse. Cuando un atributo de la entidad Padre (Parent) es parte de la clave primaria (PK), automticamente se convierte en parte de la clave primaria de la entidad Hija (Child) y adems se convierte en clave fornea de la entidad Hija (Child). Dicta / Es_dictado_por Profesor Curso
De uno a muchos sin identificacin (Non-identifying relationship) cuando la entidad subordinada NO necesita de la clave de la entidad padre para identificarse. Cuando un atributo de la entidad Padre (Parent) es parte de la clave primaria (PK), automticamente se convierte en clave fornea de la entidad Hija (Child). Tiene / Tiene_una Especialidad Alumno
De muchos a muchos (Many-to-many relationship) . Est_matriculado_en / Matricula_a Alumno Curso
Deuno a uno (One-to-one relationship) UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 3 de 18 Hace_uso_de / Es_usada_por Z Alumno PC
Bases de datos y diseo Una tabla o relacin es una disposicin rectangular de datos donde en las filas van las ocurrencias de entidades (registros) y en las columnas van los atributos (campos). Por ejemplo, la tabla Curso: Tabla: Curso Cod_curso Nom_curso Sumilla Horas Precio Prerrequisitos BDO1 Windows XP y Herramientas de Internet Introduccin 80 120 BD02 Introduccin a las Bases de Datos Conceptos bsicos 80 120 BD01 BD03 Modelamiento e Implantacin de Bases de Datos Preliminares 80 120 BD02
Nota: En terminologa de SQL se habla de filas y columnas. Se llama dominio al conjunto de todos los posibles valores que puede tomar un atributo. Una base de datos de SQL Server consta de una coleccin de tablas con datos y otros objetos como vistas, ndices, procedimientos almacenados y desencadenantes, que se definen para poder llevar a cabo distintas opera- ciones con datos. Los datos almacenados en una base de datos suelen estar relacionados con un tema o un proceso determinados como, por ejemplo, la informacin de inventario para el almacn de una fbrica. Antes de crear una base de datos, es importante entender las partes que la componen y cmo disearlas para asegurar que la base de datos funcione correctamente una vez implementada. Un Sistema de Gestin de Bases de Datos (SGBD) o DBMS (DataBase Mangement System): Es un software especializado en la gestin de bases de datos. Algunos de ellos son SQL Server 2000, Access, Visual FoxPro, Pa- radox, Interbase, Visual dBase, Oracle, DB2, Sybase, etc. El diseo de base de datos es una actividad necesaria que tiene como finalidad crear bases de datos fciles de administrar, usar y mantener. Construir una base de datos sin diseo es como construir un edificio sin planos. El diseo de BD tiene 3 fases: Diseo Conceptual: Es la representacin de los requerimientos del problema y que se representa me- diante el Esquema Conceptual que es el Diagrama Entidad/ Interrelacin de Chen. En esta etapa aun no se conoce el modelo de datos a usar, que pueden ser el Reticular, J errquico, Relacional, Dimensional o el Orientado a Objetos. Diseo Lgico: El objetivo es transformar el Esquema Conceptual en Esquema Lgico que se basa en el modelo de datos Relacional que se basa en tablas donde la informacin se almacena en filas y co- lumnas. Tiene 2 fases: Diseo Lgico Estndar: Que tiene en cuenta slo el modelo de datos (Relacional) y tipos de datos genricos. Transforma el Esquema Conceptual en Esquema Lgico Estndar. En el ERWIN se le llama modelo lgico. Diseo Lgico Especfico: Que tiene en cuenta el SGBD (Sistema de Gestin de BD) a utili- zarse que en nuestro caso es el SQL Server 2000 y maneja los tipos de datos soportados por es- te SGBD. Transforma el Esquema Lgico Estndar en Esquema Lgico Especfico. En el ERWIN se le llama modelo fsico. En esta fase se puede crear tambin ndices, vistas, desen- cadenantes y procedimientos almacenados. Esta fase incluye tambin el proceso de normaliza- cin. ERWIN normaliza hasta la 3FN. Diseo Fsico: Transforma el Esquema Lgico Especfico en Esquema Fsico generando las respecti- vas tablas de la BD. La normalizacin es un proceso que busca eliminar anomalas, ambigedades, prdidas y reducir al mximo las redundancias en las bases de datos. Para esto se transforman las tablas en tablas equivalentes a travs de restriccio- nes. Cada restriccin es una forma normal. Existen 6 formas normales fundamentales: 1FN (1ra Forma Normal), 2FN (2da. FN), 3FN (3ra. FN), FNBC (Forma Normal Boyce Codd), 4FN (4ta. FN) y 5FN (5ta FN). Para definir el concepto de normalizacin es necesario conocer el concepto fundamental de dependencia funcio- nal entre atributos: Dada una tabla o relacin R (A 1 , A 2 ,, A n ) dondeA ={ A 1 , A 2 ,, A n } es el conjunto de atributos de la tablaR. Un descriptor X de R, es cualquier subconjunto X A. Filas: Registros Columnas: Atributos UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 4 de 18 Dados los descriptores X, Y deR, diremos que Y depende funcionalmente de X o que X determina a Y, y escribiremos X Y si y slo si a todo valor de X le corresponde uno y slo valor de Y. Ejemplo: En la tabla Alumno (Cod_alumno, Ape_alumno, Nom_alumno, Sex_alumno, Fna_alumno, Dir_alumno, Tel_alumno, Fot_alumno, Esp_alumno, Condicin) tenemos que Cod_alumno Ape_alumno, Nom_alumno, Sex_alumno, Fna_alumno, Dir_alumno, Tel_alumno, Fot_alumno, Esp_alumno, Condi- cin. Esto es que dado un cdigo de alumno slo puede corresponderle un solo apellido y un solo nom- bre, etc. En otras palabras Cod_alumno A ya que es obvio que Cod_alumno Cod_alumno. En caso contrario se escribe X /Y, y se lee Y no depende funcionalmente de X o que X no determi- na a Y. Dependencia funcional plena o completa. Dados los descriptores X, Y deR, diremos que Y tiene de- pendencia plena o completa de X, si Y depende funcionalmente de X pero no de un subconjunto de Y. Escribiremos X Y en este caso. Ejemplo: En la tabla Prstamo (Cod_libro, Ttulo, Autor, Editorial, ID_usuario, Apellido, Nombre, Di- reccin, Telfono, Fecha_prstamo, Fecha_devolucin) tenemos que: (Cod_libro, ID_usuario) Fecha_prstamo es una dependencia funcional completa, puesto que: Cod_libro / Fecha_prstamo ID_usuario / Fecha_prstamo En cambio, (Cod_libro, ID_usuario) Editorial, no es una dependencia funcional completa, puesto que Cod_libro Editorial. Dependencia transitiva. Dados los descriptores X, Y, Z deR, diremos que Z tiene dependencia transi- tiva de X, si X Y, Y Z y, Y /X y escribiremos X Z en este caso. Ejemplo: En la tabla Libro (Cod_libro, Ttulo, Editorial, Pas, Pginas, Ao_edicin) tenemos que: Cod_libro Editorial, Editorial Pas, Cod_libro Pas y adems Editorial / Pas. Entonces te- nemos la dependencia transitiva Cod_libro Pas. Dependencia multivaluada. Dados los descriptores X, Y deR, diremos que X multidetermina a Y, y escribiremos X Y s y slo si a todo valor de X le corresponde un conjunto de valores de Y inde- pendientemente de los valores de los atributos de X, Y, A. Tambin suele representarse con X {Y}. Ejemplo: En la tabla Autor (Autor, Ttulo, Editorial): Autor Titulo Editorial Mario Vargas Llosa La Ciudad y los Perros Alfaguara Mario Vargas Llosa La Ciudad y los Perros Peisa Mario Vargas Llosa El Paraso en la Otra Esquina Alfaguara Mario Vargas Llosa El Paraso en la Otra Esquina Peisa J uan Rulfo El Llano en Llamas Planeta J uan Rulfo Pedro Pramo Planeta Brevemente: Una tabla R est en Primera Forma Normal (1FN) si y slo si todo atributo toma un nico valor en su dominio. Es decir todos los valores de celdas son atmicos. Una tabla R est en Segunda Forma Normal (2FN) si y slo si est en 1FN y todo atributo no clave tiene dependencia funcional completa respecto a la clave primaria. Una tabla R est en Tercera Forma Normal (2FN) si y slo si todo est en 2FN y todo atribu- to no clave no tiene dependencia transitiva respecto a la clave primaria. Una tabla R est en la Forma Normal Boyce - Codd (FNBC) si y slo si est n 3FN y todo determinante es clave candidata. Una tabla R est en la Cuarta Forma Normal (4FN) si y slo si est en la FNBC y todo de- pendencia multivaluada lo determina una clave candidata. Nota: El ERWIN garantiza al menos las 3 primeras formas normales siempre y cuando se haga un buen diseo. Los objetos como ndices, vistas, desencadenantes y procedimientos almacenados son importantes desde la etapa de diseo ya que: Los ndices son ordenaciones de las filas que permiten acceder a los datos de la tabla rpidamente y en un orden establecido alfabtica, numrica o cronolgicamente. [Indexes] Las vistas son tablas virtuales que resultan de consultas de usuario a partir de una o ms tablas. En la etapa de diseo debe considerarse las consultas ms frecuentes de los usuarios finales. [Views] Los desencadenantes (desencadenadores o disparadores) son controles que se aplican a las columnas de una tabla (o la tabla en su totalidad) cuando se aplica las operaciones de insertar (insert), eliminar (de- lete) o actualizar (update) filas. [Triggers] Autor Ttulo Autor Editorial UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 5 de 18 Los procedimientos almacenados son scripts (secuencias de comandos SQL) o pequeos programas que se almacenan en la BD para tareas frecuentes y necesarias, para ejercer un control adecuado en la administracin de la BD. [Store Procedures]
0. Previamente crear con WINDOWS XP una carpeta y subcarpetas en el drive C, D, E ... (aquel que tenga entre parntesis (libre), por ejemplo E(Libre)) dentro de con tu nombre o cdigo, por ejemplo, si tu nombre es Muriel (No se puede trabajar en disquetes. Evitar espacios en blanco o caracteres especiales en los nom- bres). Es recomendable sacar siempre copia de los archivos de trabajo.
La informacin de la que disponemos es la siguiente: Problema: Consiste en administrar acadmicamente una base de datos para la academia ADA BYRON. + La academia de computacin e informtica Ada BYRON ofrece varias especialidades en mdulos de 6 ciclos secuenciales de 4 semanas de duracin. Al final de cada mdulo el alumno obtiene una certificacin de Tcnico en un rea. Si un alumno lleva todos los mdulos obtiene n el ttulo pro- fesional de Tcnico en Informtica. + Todo curso est a cargo de un profesor y se ofrece en un determinado nmero de Cursos y horario semanal y tiene un precio. + Todo alumno est obligado a llevar al menos un curso y un mximo de 3 cursos por mdulo. + Todo profesor est encargado de cumplir con el dictado de Cursos y percibir un sueldo. Se paga 30 soles por hora dictada. Como mnimo de dictar un curso y como mximo tres. Todo profesor tiene un asesor en la especialidad que dicta. Hay un asesor por especialidad. + Por ahora las especialidades son: Ofimtica, Administrador de Base de Datos, Programador de Sistemas, Programador de Aplicaciones Visuales y Administracin de Redes. + El profesor debe evaluar el curso con 4 notas: Prctica, Examen y Trabajo y alguna otra opcional. El promedio debe obtenerse por (Prctica +Examen +Trabajo)/3 o (Prctica +Examen +Trabajo +Otro)/4. 1. Vamos a construir el MODELO CONCEPTUAL, representado en un DE /R genrico donde solo vamos a sealar las entidades, las interrelaciones, su cardinalidad. Para esto vamos a utilizar como herramienta el ERWIN 4.1. SEGUIR PASO A PASO LAS INDICACIONES DE ESTA PRCTICA. TODOS LOS PASOS DADOS SON ABSOLUTAMENTE NECESARIOS! 1.0 Encender la computadora con WINDOWS XP. Arrancar el ERWIN 4.1. (Computer Associates/All Fusion/Erwin Data Modeler/Erwin). Qu aparece en la pantalla? 1.1 Ignorar la ventana inicial ModelMart Connection Manager (cerrar). En la ventana siguiente Computer Associates ERwin marcar Create new model y confirmar con OK. En la ventana siguiente Create Model Select Template marcar Logical /Physical y confirmar con OK. Qu pantallas aparecen? Ver Figura 1: ATENCION: Cada vez que hagamos r ef er enci a a l a car pet a Muriel, est amos r ef i r i ndonos a l a car pet a que has cr eado con t u nombr e o cdi go! ! MURIEL MODELAMIENTO SQLServer DATOS Datos Archivos de SQL Server Archivos de Transact-SQL MURIEL SQLServer Archivos del ERWIN MODELAMIENTO UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 6 de 18
Figura 1 1.2 Identificar los elementos de la Caja de herramientas (Toolbok) (Figura 2) del ERWIN 4.1.:
Figura 2 + Qu hace c/u de los iconos de esta Caja de herramientas (Toolbox)? 1.3 Ir al men Model/Model Properties y en el recuadro AutoTransform Logical Objects Qu ocurre? Marcar las dos opciones: E Many-to-Many Relationships with Association Table E Supertype/Subtype with Identifying Relationships Confirmar con OK. 1.4 En la Barra de herramientas (ToolBar) (Figura 3) que esta debajo del men principal hacer click en el icono Entity level:
Figura 3 1.4.1 Hacer click en el icono de Entity de la Caja de herramientas (Toolbox) y crear las siguientes entidades: Profesor, Curso, Alumno y Especialidad. Ver Figura 4.a
Figura 4.a 1.4.2 En la Barra de Herramientas (ToolBar) (Figura 3) hacer click en el icono Definition Level Qu ocurre con la Figura 4.a? 1.5 Sealar con el ratn c/u de las entidades, abrir el men contextual con el botn derecho del ratn y elegir la opcin Entity Properties y usando la ficha Definition dar las siguientes definiciones para c/u de las enti- dades (Figura 4.b): + Profesor: Persona empleada por la academia, cuya responsabilidad es dictar Cursos a los alumnos. + Alumno: Persona que est matriculada en las Cursos y debe asistir a las clases y ser evaluado. + Curso: Contenido de la materia que se desarrolla en Cursos. + Especialidad: Rama de la computacin en la que se especializa un alumno. Profesor Curso Alumno Especialidad UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 7 de 18 Alumno Persona que est matriculada en las clases y debe asistir a las sesiones de clase. Curso Contenido de la materia que se desarrolla en clases. Especialidad Rama de la computacin en la que se especializa un alumno. Profesor Persona empleada por la academia, cuya responsabilidad es dictar clases a los alumnos.
Figura 4.b Nota: El archivo debe guardarse como Academia(La extensin es .er1 que ERWIN coloca automticamente) en E:\Muriel\Modelamiento o donde corresponda. 1.6 Usar los tres tipos de interrelaciones que aparecen en la Caja de Herramientas (Toolbox) y construir el siguiente esquema del Modelo Conceptual para la BD Academia (Figura 6) TENIENDO EN CUENTA LAS OBSERVACIONES QUE APARECEN A CONTINUACION. OBSERVACIONES: + TIENE IMPORTANCIA DE QU ENTIDAD (PRIMER CLICK) A QU ENTI- DAD(SEGUNDO CLICK) SE TRAZA LA INTERRELACIN Y DE QU TIPO ES LA INTE- RRELACIN: Nombre Direccin de interrelacin Tipo de interrelacin Padre (Parent) Hijo (Child) Cardinalidad (esto slo es explicacin) De Profesor a Curso Identifying relationship Dicta Es_dictado_por De uno a muchos De Alumno a Curso Many-to-many relationship Se_matricula_en Matricula_a De muchos a muchos De Especialidad a Alumno Non-identifying relationship Tiene Tiene_una De uno a muchos De Profesor a Profesor Non-identifying relationship Asesora_a Es_asesorado_por De uno a muchos
Para poner el nombre de las interrelaciones marcar la interrelacin respectiva y hacer doble click y en la ventana Relationships /General en el cuadro Verb Phrase el nombre de la interrelacin; por ejemplo para la interrela- cin (Profesor, Curso): (Ver Figura 5)
Nota: Para visualizar los nombres de las interrelaciones abrir el men contextual (botn derecho del ratn) fuera de los elementos del diagrama y activar Relationship Display / Verb Phrase. + Qu interrelaciones se han definido? (Dar el nombre con el Verbo Frase, por ejemplo: Dicta / Es_dictado_por para (Profesor, Curso)) + Qu tipo de interrelaciones se han definido y cul es su cardinalidad? Cmo queda el esquema? Ver Figura 6: Figura 5
UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 8 de 18 Tiene / Tiene_una Asesora_a / Es_asesorado_por Se_matricula_en / Matricula_a Dicta / Es_dictado_por Profesor Persona empleada por la academia, cu responsabilidad es dictar clases a los alumnos. Alumno Persona que est matriculada en las clases y debe asistir a las sesiones clase. Curso Contenido de la materia que s desarrolla en clases. Especialidad Rama de la computacin en la que especializa un alumno.
Figura 6 1.7 Guardar nuevamente el archivo del ERWIN con el nombre Academia .er1 en la carpeta Modelamiento que hemos creado: E:\Muriel\Modelamiento (o donde corresponda).
2. Ahora vamos a construir el MODELO LGICO ESTANDAR. (Lgico en ERWIN) y el MODELO LOGICO ESPECIFICO (Fsico en ERWIN). 2.0 Para esto, hacer click en el icono Attribute level en la Barra de herramientas (Figura 3). Hacer doble click sobre c/u de las entidades o abrir el Men contextual con el botn derecho del ratn elegir Attributes y llenar el nombre de los atributos y su tipo (Domain) segn se indica en las entidades que siguen. Usar New cada vez que se define un nuevo atributo y elegir el dominio de acuerdo a lo que sigue a continuacin. Si un atributo ya aparece definido, como por ejemplo Cod_profesor en la entidad Curso (debe haberse creado por propagacin de clave fornea) hay que dejarlo tal como est, slo hay que cambiar la descripcin, hay que continuar con los siguientes atributos. Nota: Usar Rename para renombrar y Delete para borrar atributos en caso necesario. Para subir o bajar el nombre de un atributo usar los botones S T. Si el atributo es parte de la clave primaria marcar E Primary Key. Qu ocurre cuando uno o ms atributos son marcados como parte de una clave primaria? Para la descripcin de atributos usar la ficha Definition (Es mejor llenar primero los nombres y dominios de cada atributo, sealar las claves primarias y de dejar la descripcin de cada atributo para el final). Entidad: Profesor Atributo Dominio Clave Descripcin Cod_profesor String Primaria Identificacin de cada profesor, con formato XX999 donde XX son las iniciales del primer nombre y primer apellido y 999 nmero correlativo de 001 a Ape_profesor String Apellidos paterno y materno del profesor. Nom_profesor String Nombre(s) del profesor. Sex_profesor Unknown Sexo del profesor con los valores 1=Masculino y 0 =Femenino. Fna_profesor Datetime Fecha de nacimiento del profesor en formato dd/mm/aaaa. Grt_profesor Number Grado o Ttulo del profesor con los valores 1 =Bachillerato, 2 = Licenciatura o Ttulo, 3 =Maestra y 4 =Doctorado. Dni_profesor String DNI del profesor en el formato 99999999. Tel_profesor String Telfono domiciliario del profesor. Dir_profesor String Direccin del profesor. Pag_profesor Number Pago en soles del profesor. Asesor String Identifica al profesor que lo asesora mediante el cdigo.
Nota: Qu ha ocurrido en la entidad Curso? Ya existe algn atributo?
Entidad: Curso UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 9 de 18 Atributo Dominio Clave Descripcin Cod_curso String Primaria Cdigo del curso con el formato XX99, donde XX indica la especialidad y 99 la serie que indica el ciclo y enumera el curso: 01,02, 03,. (Cod_profesor) String (Primaria) Clave fornea que referencia a la tabla Profesor. Nom_curso String Nombre del curso. Sumilla Blob Breve descripcin del contenido del curso. Horas Number Nmero total de horas del curso. Precio Number Precio en soles del curso. Prerrequisitos String Cursos que sirven de requisito para el curso designados por su cdigo.
Entidad: Alumno Atributo Dominio Clave Descripcin Cod_alumno String Primaria Identificacin de cada alumno, con formato 999999 donde 99 representa el ao de ingreso del alumno y 9999 un nmero correlativo. Ape_alumno String Apellidos paterno y materno del alumno. Nom_alumno String Nombre(s) del alumno. Sex_alumno Unknown Sexo del alumno con los valores 1=Masculino y 0 =Femenino. Fna_alumno Datetime Fecha de nacimiento del alumno en el formato dd/mm/aaaa. Tel_alumno String Telfono domiciliario del alumno. Dir_alumno String Direccin del alumno. Fot_alumno Blob Foto del alumno capturado con escner. Esp_alumno Number Clave fornea que referencia a la entidad Especialidad. Condicin String Especifica si el alumno es Regular o Libre.
Entidad: Especialidad Atributo Dominio Clave Descripcin Esp_alumno Number Primaria Especialidad del alumno que toma valores de 0 a 5 por ahora. Descripcin String Descripcin de la especialidad.
Y obtendremos algo semejante a la Figura 7 que corresponde al ESQUEMA LGICO ESTANDAR para Academia: Tiene / Tiene_una Asesora_a / Es_asesorado_por Se_matricula_en / Matricula_a Dicta / Es_dictado_por Profesor Cod_profesor Ape_profesor Nom_profesor Sex_profesor Fna_profesor Grt_profesor Dni_profesor Tel_profesor Dir_profesor Pag_profesor Asesor Alumno Cod_alumno Ape_alumno Nom_alumno Sex_alumno Fna_alumno Tel_alumno Dir_alumno Fot_alumno Esp_alumno (FK) Condicin Curso Cod_curso Cod_profesor (FK) Nom_curso Sumilla Horas Precio Prerrequisitos Especialidad Esp_alumno Descripcin
Figura 7 2.1 En el men de herramientas hay una Caja de lista donde aparece Logical (Modelo lgico), cambiar a Physical (Modelo fsico). Qu ocurre? Se ha generado tablas nuevas? Qu atributos han heredado las tablas derivadas? UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 10 de 18 2.2 Ir al men Database/Choose Database... donde tendremos la ventana de dilogo respectiva. Cules son los DBMS (SGBD) basados en SQL que soporta? (Target SQL DBMS) Cules son los DBMS (SGBD) de escritorio que soporta? (Target Desktop DBMS) A nosotros nos interesa usar el DBMS (SGBD) MS SQL Server por lo tanto marcaremos SQL Ser- ver y en SQL Server Versin pondremos 2000. 2.3 Con el modelo lgico especfico (fsico en ERWIN) vamos a realizar las siguientes tareas: 2.3.1 Darle tipo y el ancho de los atributos a las tablas del modelo fsico. Para esto hacer doble click sobre la tabla o abrir el Men contextual con el botn derecho del ratn elegir Columns y en la ventana de dilogo confirmar el nombre de las columnas, el tipo de dato y el ancho, su carcter de No Nulo o Nu- lo segn se indica en las estructuras de tablas que aparecen ms abajo. La ficha del dilogo debe estar en SQL Server y debe obtenerse el siguiente ESQUEMA LGICO ESPECFICO (Figura 7). Si el tipo de dato no figura en la lista, como es el caso de Text, entonces hay que tipearlo. 2.3.2 Generacin de tablas nuevas por cada interrelacin de muchos a muchos. En las versiones anteriores de ERWIN toda interrelacin de muchos a muchos genera automticamente una nueva tabla como dice la teora de Modelamiento de Bases de Datos; sin embargo en esta versin (4.1) esto es opcional. Por esta razn hemos dado el paso 1.3 donde forzamos a que se cree una Tabla Asociacin para toda relacin de muchos a muchos. De otro modo hay que marcar con el ratn la interrelacin muchos a muchos y abrir el men contextual con el botn derecho del ratn y elegir la opcin Create Association Table. Agregar las columnas que faltan en las tablas derivadas segn se indica en las estructuras dadas a continuacin. Renombrar la tabla Alumno_Curso por Registro. Las estructuras de las tablas en el modelo fsico de ERWIN son:
Tabla: Profesor Columna Tipo_dato Opcin de Nulo Cod_profesor Char(5) No Nulo Ape_profesor Char(40) No Nulo Nom_profesor Char(35) No Nulo Sex_profesor Bit No Nulo Fna_profesor Datetime No Nulo Grt_profesor Int Nulo Dni_profesor Char(8) Nulo Tel_profesor Char(6) Nulo Dir_profesor Char(50) Nulo Pag_profesor Money Nulo Asesor Char(5) No Nulo
Tabla: Curso Columna Tipo_dato Opcin de Nulo Cod_curso Char(4) No Nulo (Cod_profesor) Char(5) No Nulo Nom_curso Char(100) No Nulo Sumilla Text Nulo Horas Int Nulo Precio Money Nulo Prerrequisitos Char(5) Nulo
Tabla: Alumno Columna Tipo_dato Opcin de Nulo Cod_alumno Char(6) No Nulo Ape_alumno Char(40) No Nulo Nom_alumno Char(35) No Nulo UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 11 de 18 Sex_alumno Bit No Nulo Fna_alumno Datetime No Nulo Tel_alumno Char(6) Nulo Dir_alumno Char(50) Nulo Fot_alumno Image Nulo Esp_alumno Int Nulo Condicin Char(7) Nulo
Tabla: Especialidad Columna Tipo_dato Opcin de Nulo Esp_alumno Int No Nulo Descripcin Char(40) No Nulo Y la tabla derivada: Tabla: Alumno_Curso Renombrar por Registro Columna Tipo_dato Opcin de Nulo (Cod_alumno) Char(6) No Nulo (Cod_curso) Char(4) No Nulo (Cod_profesor) Char(5) No Nulo Fecha Datetime Clave Primaria Practica Numeric(5,2) Nulo Examen Numeric(5,2) Nulo Trabajo Numeric(5,2) Nulo Otro Numeric(5,2) Nulo Y obtendremos algo semejante a la Figura 8: Alumno Cod_alumno: char(6) Ape_alumno: char(40) Nom_alumno: char(35) Sex_alumno: bit Fna_alumno: datetime Tel_alumno: char(6) Dir_alumno: char(50) Fot_alumno: image Esp_alumno: int Condicin: char(7) Curso Cod_curso: char(4) Cod_profesor: char(5) Nom_curso: char(100) Sumilla: text Horas: int Precio: money Prerrequisitos: char(5) Especialidad Esp_alumno: int Descripcin: char(40) Profesor Cod_profesor: char(5) Ape_profesor: char(40) Nom_profesor: char(35) Sex_profesor: bit Fna_profesor: datetime Grt_profesor: int Dni_profesor: char(8) Tel_profesor: char(6) Dir_profesor: char(50) Pag_profesor: money Asesor: char(5) Registro Cod_alumno: char(6) Cod_curso: char(4) Cod_profesor: char(5) Fecha: datetime Practica: numeric(5,2) Examen: numeric(5,2) Trabajo: numeric(5,2) Otro: numeric(5,2)
Figura 8 2.3.3 Volver a guardar el archivo del ERWIN con el nombre Academia .er1 en E:\Muriel\Modelamiento (o donde corresponda). 2.3.4 Crear los ndices que sean necesarios para cada tabla, segn se indica en las estructuras dadas. Para esto proce- der de la siguiente forma: Sealar la tabla respectiva y abrir el men contextual y elegir la opcin Indexes Qu ocurre? Ya existe algn ndice definido? Cmo se llama? Cul es su UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 12 de 18 tipo? Que columnas son sus miembros? Ver Figura 9 NOTA: EN TODAS LAS TABLAS SE ENCONTRAR DEFINIDOS LOS INDICES DE TIPO PK QUE HAN SIDO CREADOS POR LA CLAVE PRIMARIA. DEBEN QUEDAR TAL COMO ESTN. Hacer click en la ficha New y llenar los datos soli- citados para cada tabla: (Ver Figura 9) Darle el nombre en Index (ndice). Dejar tal como est Key Group (Grupo Clave). Marcar Unique en el caso que se indique que el ndice es nico. En caso contrario desmarcar. Haciendo uso de la columna Members, seleccionar las columnas que forman parte del ndice haciendo uso del botn X. Para anular la seleccin de una columna usar el botnW. Aqu tambin se puede indicar si el ndice es descendente marcando DESC. Usar la ficha Comment para los comentarios.
Tabla: Profesor Indice ni- co Columnas Comentario Descendente CK_Apenom E Ape_profesor Nom_profesor Ordena la tabla por la prioridad Apellido, Nombre. Puede ser clave candidata.
IX_Fechanac Fna_profesor Ordena la tabla por fecha de nacimiento. IX_Grado Grt_profesor Ape_profesor Nom_profesor Ordena la tabla por la prioridad Grado_Ttulo, Apellido, Nombre. IX_Pago Pag_profesor Ordena la tabla por pago descendentemente. E
Tabla: Curso Indice nico Columnas Comentario Descendente CK_Nombre E Nom_curso Ordena la tabla por el nombre del curso. Puede ser clave candidata IX_Horas Horas Ordena la tabla por el nmero de horas descendentemente. E IX_Precio Precio Ordena la tabla por el precio descendentemente. E
Tabla: Alumno Indice nico Columnas Comentario CK_Apenom E Ape_alumno Nom_alumno Ordena la tabla por la prioridad Apellido, Nombre. Puede ser clave candidata. IX_Fechanac Fna_alumno Ordena la tabla por fecha de nacimiento. IX_Especialidad Esp_alumno Ape_alumno Nom_alumno Ordena la tabla por la prioridad Especialidad, Apellido, Nombre.
Tabla: Especialidad Indice nico Columnas Comentario CK_Descripcin E Descripcin Ordena la tabla por la descripcin. Puede ser clave candidata.
Tabla: Registro ndice nico Columnas Comentario Descendente IX_Alumno Cod_alumno Ordena la tabla por el cdigo del alumno. IX_Curso Cod_curso Ordena la tabla por el cdigo de curso. IX_Fecha Fecha Ordena la tabla por la fecha. IX_Prctica Prctica Ordena la tabla por la nota de prctica descendentemente. E IX_Examen Examen Ordena la tabla por la nota de examen descendentemente. E IX_Trabajo Trabajo Ordena la tabla por la nota de trabajo descendentemente. E Figura 9 UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Pgina N 1 Pg. 13 de 18 2.3.5 Crear dos Vistas: Profesores_Asesores (profesores que asesoran a los profesores de su especialidad) y Alumnos_Detalle_Especialidad (alumnos con la descripcin de sus especialidades). Para esto procede- remos como sigue: 2.3.5.1 Para la vista Profesores_Asesores, seguir los pasos siguientes: Seleccionar el icono View table de la Caja de Herramientas. Darle el nombre Profesores_Asesores. Ubicar la vista debajo de la tabla Profesor. Ver Figura 10
Ubicarse en la vista, abrir el men contextual y sealar la opcin Database view properties. Qu aparece? Que fichas tiene la ventana de dilogo? Sealar la ficha From y seleccionar la tabla Profesor. Sealar la ficha Select y seleccionar las columnas Cod_profesor, Ape_profesor, Nom_profesor y Asesor. (ver Figura 11) Sealar la ficha Where y en la opcin Where escribir la expresin: Asesor = Cod_profesor Sealar la ficha SQL Qu expresin SQL aparece en pantalla? Sealar la ficha Comment y escribir el comentario: Esta vista visualiza a los profesores que cumplen el papel de asesores. Confirmar todo con OK. Cmo aparece la vista? A que tabla est ligada? 2.3.5.2 Para la vista Alumnos_Detalle_Especialidad, seguir los pasos siguientes: Seleccionar el icono Create view table de la Caja de Herramientas. Darle el nombre Alum- nos_Detalle_Especialidad. Ubicarla debajo de la tabla Alumno. Ubicarse en la vista, abril el men contextual y sealar la opcin Database view properties. Sealar la ficha From y seleccionar las tablas Alumno y Espe- cialidad. Sealar la ficha Select y seleccionar las columnas Ape_alumno, Nom_alumno y Esp_alumno de la tabla Alumno y la columna Descripcin de la tabla Especialidad. Sealar la ficha Where y en la opcin Where escribir la expre- sin: Alumno.Esp_alumno = Especialidad.Esp_alumno En la opcin Group By escribir la expresin: Alumno.Esp_alumno, Ape_alumno, Nom_alumno, Descripcin (Ver Figura 12) Sealar la ficha SQL Qu expresin SQL aparece en pantalla? Sealar la ficha Comment y escribir el comentario: Esta vista visualiza los apellidos, nombres y especialidades, describindolas. Confirmar todo con OK. Cmo aparece la vista? A qu tablas est ligada? 2.3.5.3 Crear la vista Profesores_Postgrado que visualice a los profesores con maestra o doctorado. 2.3.6 Crear dos Desencadenantes: Profesor_Apellido_Mayscula (Los apellidos de los profesores deben ir siempre con maysculas cuando se ingresan datos) y Alumno_Regular_Libre (Reconoce si el alumno el regular o libre cuando se ingresa sus datos). Para esto procederemos como sigue: 2.3.6.1 Para el desencadenante Apellido_Mayscula, seguir los pasos siguientes: Sealar la tabla Profesor ya abrir el men contextual, elegir la opcin Triggers Qu ocurre? Hacer click en la ficha New y darle el nombre de Profesor_Apellido_Mayscula. Figura 10 View table Figura 11 Figura 12 UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 14 de 18 En la ventana Triggers sealar la ficha General y seleccionar Insert en el cuadro Trigger On. Sealar la ficha Code Qu script SQL aparece? Reemplazar la primera parte del script con el texto siguiente: create trigger Profesor_Apellido_Mayscula on Pro- fesor for insert as update Profesor set Ape_profesor = upper(Ape_profesor) Nota: Dejar el script tal como est a partir de /* ERwin Builtin %Datetime */ (Ver Figura 13) Sealar la ficha Expanded Qu script SQL aparece en pantalla? Sealar la ficha Comment y escribir el comentario: Los apellidos de los profesores deben ir siempre con maysculas cuando se ingresan datos. Confirmar todo con OK. 2.3.6.2 Para el desencadenante Alumno_Regular_Libre, seguir los pasos siguientes: Sealar la tabla Alumno ya abrir el men contextual, elegir la opcin Triggers Qu ocurre? Hacer click en la ficha New y darle el nombre de Alumno_Regular_Libre. En la ventana Triggers sealar la ficha General y seleccionar Insert en el cuadro Trigger On. Sealar la ficha Code Qu script SQL aparece? Reemplazar la primera parte del script con el texto siguiente: create trigger Alumno_Regular_Libre on Alumno for insert as update Alumno set Condicin = case when Esp_alumno = 0 then 'LIBRE' when Esp_alumno > 0 then 'REGULAR' end Nota: Dejar el script tal como est a partir de /* ERwin Builtin %Datetime */ Sealar la ficha Expanded Qu script SQL aparece en pantalla? Sealar la ficha Comment y escribir el comentario: Reconoce si el alumno el regular o libre cuando se ingresa sus datos. Confirmar todo con OK. 2.3.6.3 Construir el desencadenante Alumno_Apellido_Mayscula basndose en 2.3.6.1. (Donde diga Profesor (profesor) sustituir por Alumno (alumno).
El resultado final del Esquema Lgico Especfico (Fsico en el ERWIN) debe ser semejante a la Figura 14:
Figura 13 UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Figura 14 2.4 Volver a guardar el archivo del ERWIN con el nombre Academia .er1 en E:\Muriel\Modelamiento (o donde corresponda). 2.5 Ir men Tools y elegir la opcin Forward Engineer /SchemaGeneration Qu aparece? Elegir la opcin Table y por aceptar omisin la seccin Table. Hacer click en la ficha Preview. Qu aparece en la respectiva ventana?. Es conveniente grabar este archivo, porque es la especificacin del modelo fsico de nuestra base de datos. Hay que guardarlo en E:\Muriel\SQLServer (o el que corresponda) con el nombre de Academia y darle la extensin .sql. con la opcin grabar (botn U ). Minimizar la ventana de ERWIN. 3. Ahora vamos a trabajar con el MS SQL Server 2000. El Administrador Corporativo de SQL Server 2000 (Enterprise Manager): Es una de las herramientas componentes de MS SQL Server 2000 que nos permite configurar y administrar los objetos componentes y nos va a permitir crear y administrar bases de datos en la arquitectura Cliente / Servidor (Figura 15): 3.0 Cargar el Administrador Corporativo de MS Server 2000. (Microsoft SQL Server / Adminis- trador Corporativo). Cmo se presenta el Administrador Corporativo? Qu se observa a la izquierda y a la derecha de las dos zonas que aparecen? Cul es el servidor que aparece asignado dentro del grupo de Servidores de la PC que se est manejando? 3.1 Vamos preparar el SERVIDOR. En primer lugar vamos a crear una base de datos. Para esto vamos a seguir los pasos siguientes: 3.1.1 Hacer click en la + de Servidores Microsoft SQL Server. 3.1.2 Hacer click en la + de Grupo de SQL Server. Al instalar SQL Server 2000 debe haberse creado un grupo con el nombre de usuario de Windows Cul es este? Abrir nuevamente este rbol haciendo click en la + . Figura 15 Este es el Panel de detalle Este es el rbol de consola UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 16 de 18 3.1.3 Hacer click en el botn derecho de Base de datos y en el men contextual elegir Nueva base de datos.Que ocurre? En Nombre asignarle Academia. (OJO! Si eres del turno de la tarde debes asignar como nombre Academia_Tarde, y si eres del turno de la noche Academia_Noche). Si cualquiera de esos nom- bres ya existen ponerle Academia_Muriel, Academia_MGM, etc., con tu nombre o iniciales. Hacer click en la ficha Archivo de datos y En Nombre de archivo aceptar el nombre por omisin Cul es? En Ubicacin buscar la ubicacin de la carpeta que hemos creado con la ayuda del botn , para guardar el archivo Academia_Data.MDF: (Ver Figura 16) E:\Muriel\SQLServer\Datos\Academia_Data.MDF (o el que corresponda)
Figura 16 NOTA: SQL Server guarda todo los archivos dentro del mismo programa. En Tamao inicial (MB): Qu tamao le asigna por omisin? El usuario puede asignar el tamao en Mb segn crea conveniente. Se sugiere 2 Mb. En Grupo de Archivos aceptar PRIMARY por omisin. En la ficha Registro de transacciones: Aceptar el nombre de archivo por omisin Cul es? En Ubicacin repetir lo anterior y ubicar la carpeta para guardar el archivo Acade- mia_Log.LDF: (Ver Figura 17) E:\Muriel\SQLServer\Datos\Academia_Log.LDF (o el que corresponda)
Figura 17 En Tamao inicial (MB): Qu tamao le asigna por omisin? El usuario puede asignar el tamao en Mb segn crea conveniente. Se sugiere 1 Mb. Confirmar con Aceptar. Abrir la base de datos Academia. Hacer click en Tablas Qu ocurre? Qu tablas ha creado SQL para esta base de datos? Minimizar el SQL Server.
3.2 Vamos preparar el CLIENTE. Tenemos nuestra base de datos Academia que hemos creado en 3.1 3.2.1 Vamos a crear un DSN (Data Source Name = Nombre del Origen de Datos). Para esto vamos a seguir los pasos siguientes: Ir a la pantalla inicial de WINDOWS y usar el men Inicio/Configuracin/Panel de Control o hacer clic en Mi PC y activar el Panel de Control. En el Panel de Con- trol ubicar Panel de Con- trol/Herramientas Administrativas/ Or- genes de datos(ODBC)) En el dilogo Administrador de orgenes de datos ODBC que aparece hacer click en el botn Agregar (Add) y en el dilogo Crear nuevo origen de datos ubicar SQL Server y hacer doble click sobre l. Qu ocurre? Figura 18 Con este botn debe ubicarse la carpeta que hemos creado Con este botn debe ubicarse la carpeta que hemos creado UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 17 de 18 En el dilogo Crear nuevo origen de datos para SQL Server, asignarle el nombre sqlAcademia. En Descripcin escribir Conexin con la Base de Datos Academia. El Servidor debe ser el que ha asignado la PC respectiva. Se sugiere elegir (local) que acrece en la lista. Hacer click en la fi- cha Siguiente. Indicar que SQL Server ser el que haga la autenticacin usando la Id de inicio de SQL Server. El Id. inicio de sesin que se va a utilizar sersa (No indicar contrasea). Hacer click en la fi- cha Siguiente. En el siguiente dilogo, hay que establecer la base de datos predeterminada (En la lista hay que elegir en nuestro caso la base de datos Academia). Hacer click en Siguiente y en el siguiente di- logo hacer click en Finalizar. Aqu debe terminar el proceso y debe aparecer la pantalla siguiente (Figura 18): Hacer click en Probar origen de datos para verificar que todo est correcto. Confirmar con Aceptar. 3.2.2 Volver al ERWIN 4.1. Seguir los siguientes pasos: Abrir el archivo Academia.er1 en el modelo fsico revisar que las tablas, ndices, vistas y desencade- nantes estn todos correctos de acuerdo a las indicaciones dadas. En el modelo fsico. Ir al men Tools/Forward Engineer /Schema Generation donde tendremos la ventana de dilogo respectiva SQL Server Schema Generation. Nota: Para mantener el mismo orden de las columnas de ERWIN en el SQL Server, en la ventanaSQL Server Schema Generation hay que desactivar la opcin Physical Order: SQL Server Schema Generation Column Column EPhysical Order
Hacer click en Generate. Apareceruna ventanade dilogo donde debe llenarse los datos (Semejante a Figura 19) : User Name: sa Password: (dejar vaco) Database: Academia Server Name: (poner el nombre que Windows asign pa- ra el Grupo de SQL Server de SQL Server. Por lo gene- ral el nmero de la PC en la que ests trabajando, por ejemplo PC80, PC81, etc. Debe coincidir con el Grupo definido en SQL Server). Hacer click en Connect. Qu ocurre? Qu aparece en la respectiva ventana? El nombre dado al usuario sa significa server adiministrator que concede todos los dere- chos del usuario sobre la base de datos. Si todo est correcto debe generar las 5 tablas sin problemas. Si hay fallas hay que interrumpir con Abort cada vez que haya pausa hasta confirmar finalmente con OK y revisar los modelos lgico y fsico, porque debe haber errores. Una vez corregidos los errores generar las tablas para SQL Server. Minimizar la ventana de ERWIN. 4. Vamos a volver a cargar el Administrador Corporativo de MS Server 2000. 4.1 Abrir la base de datos Academia que hemos creado. Hacer click en Tablas. Si las tablas no aparecen, abrir el men contextual y elegir la opcin Ac- tualizar. Ver Figura 20 Qu ha ocurrido? Qu nuevas tablas ha creado SQL para esta base de datos? Figura 19 Aqu deben estar las 5 tablas obtenidas: Alumno, Curso, Especialidad, Profesor y Registro Figura 20 UNJBG /ITEL /Carrera Tcnica de Analista - Programador CURSO: Base de Datos I Periodo 2010-3
Prctica N 1 Pg. 18 de 18 Hacer doble click sobre c/u de las 5 tablas Qu ocurre? Qu aparece en pantalla? 4.2 Hacer click en Vistas y verificar la existencia de las tres vistas que hemos creado: Profesores_Asesores, Profesores_Postgrado y Alumno_Detalle_Especialidad. Si las vistas no aparecen, abrir el men contex- tual y elegir la opcin Actualizar. 4.3 La existencia de ndices y Desencadenates puede comprobase, sealando la tabla respectiva en el Panel de detalle (por ejemplo, Alumno), abrir el men contextual y elegir la opcin Disear tabla. 4.3.1 Para revisar los ndices para cada una de las tablas: Usar el icono Propiedades de tablas e ndice de la barra de herramientas (BH). En la ventana Propiedades hacer click en la ficha ndices y claves y revi- sar la lista dendice seleccionado: (deben estar todos los que hemos creado en el ERWIN para la tabla elegida). 4.3.2 Para revisar los desencadenantes: Usar el icono Desencadenadores de la BH. En la ventana Propiedades del desencadenador revisar la lista deNombre: (deben estar todos los desencadenantes que hemos creado en el ERWIN para la tabla elegida: 2 para Alumno: Alumno_Apellido_Mayscula y Alumno_Regular_Libre y 1 para Profesor: Alumno_Apellido_Mayscula).
AQU FINALIZA ESTA PRACTICA!! (Pero lo que sigue es importante, pero slo debe ejecutarse cuando sea necesario) 4.4 Para trasladar u obtener copia de la Base de Datos: + Para llevar la BD Academia a otra computadora o para obtener una copia de respaldo de esta BD es necesario copiar los archivos Academia_Data.MDF y Academia_Log.LDF que estn en la carpeta: E:\Muriel\SQLServer\Datos\ (o la que corresponda) Estos archivos almacenan toda la informacin de la BD Academia. NOTA: SQL Server 2000 no deja copiar estos archivos si antes no se separa la BD respectiva. (En nuestro caso la BD Academia) + Para separar la BD, usar el Administrador Corporativo, sealar la BD respectiva (p.ej. Academia) abrir el men contextual y usar Todas las tareas /Separar base de datos. Una vez separada la BD respectiva ya se puede copiar a una memoria USB o un CD o comprimir para copiar en disquetes. + Para restaurar la BD, sealar Base de datos en el rbol de Consola, abrir el men contextual y usar Todas las tareas /Adjuntar base de datos y seguir los pasos. Esto se puede hacer en la misma PC o en otra PC donde copiamos los 2 archivos mencionados 4.5 Para visualizar slo objetos de nuestra Base de Datos y no los del sistema: + Como puedes observar en la figura 20, SQL Server 2000 muestra las BD del sistema y todos los ele- mentos (tablas, vistas, procedimientos almacenados, etc.) del sistema. Si slo queremos visualizar nuestros propios objetos (p. ej., slo nuestras 5 tablas: Alumno, Curso, Especialidad, Profesor y Re- gistro) en el rbol de Consola sealar el servidor de BD respectivo (p. ej., PC11 (Windows NT) o (local)1(Windows NT)), abrir el men contextual y elegir Modificar propiedades de registro del servidor SQL Server y en el recuadro Opciones desactivar Mostrar bases de datos y objetos del sistema: (Ver Figura 21)
Figura 21.
No olvidarse de presentar los informes! Tacna, 2010