SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
GUIAS DE LABORATORIO
               BASE DEDATOS


 CURSO:
                    Base de Datos                             CICLO

                                                               IV
SEMESTRE       Ing. Franklin Guerrero Campos                  SEMANA
                     Profesor del Curso
                                                              01-08
2010-1
             Material Didáctico para uso exclusivo en clase
Guias de Laboratorios de Base de Datos                                           -2–

Laboratorio Nº 01

Objetivos:

   Uso de la Herramienta Case Erwin, DbDesign, embarcadero para el modelado de Base
   de Datos.

   •   Modelo Lógico
   •   Modelo Físico
   •   Modelos Lógicos / Físico

   Notación
   • IDEF1X
   • IE
   • Dimensional Model


   Parte 1
      • Instalación de las Herramientas Case para el modelado de Base de Datos.
      • Descripción del Entorno de la Herramienta Case.




Parte 2
Instalar otra herramienta case de distribución libre (dbdesign) y Realizar un cuadro
comparativo.




                              - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                        -3–

Laboratorio Nº 02

Objetivos:
   1. Modelado de Datos
   2. Planteamiento de un caso
   3. Entidades, dominios, atributos.


Parte 1 – Desarrollo de un Caso:


Elabora el modelo de datos lógicos para una empresa dedicada principalmente al servicio de
consultaría, que tiene las siguientes características:
La empresa se organiza en DEPARTAMENTOS, en cada uno de los cuales trabajan muchas personas.
Una PERSONA (empleado), trabaja y esta asignada oficialmente en un solo departamento. Un
departamento, puede responsabilizarse de algunos proyectos.
Cada proyecto es “jefaturado” por una persona (el jefe de proyecto), y puede estar formado por
muchos subproyectos, a cada uno de los cuales, se le puede considerar como un pequeño proyecto. A
cada proyecto (o subproyecto) se asigna varias personas que deben realizar una labor específica,
asignando un porcentaje (%) de su tiempo al mismo. A esta información se le denomina actividad,
por persona, o simplemente, ACTIVIDAD.


Los datos necesarios son los siguientes, para las personas apellidos paterno, nombres, teléfono de su
domicilio, trabajo, la fecha de ingreso a la empresa, el identificador del cargo desempeñado, nivel o
grado de instrucción (que es un numero de cero a veinte), sexo, fecha de nacimiento, imagen
fotográfica de la persona, el sueldo en soles, bonificación en soles, y una comisión en dólares.
De los clientes se usará, los datos nombres, y RUC.
Para los proyectos, el nombre del proyecto, la fecha del inicio del proyecto, la fecha final del proyecto
y la cantidad de personas participantes.




                                  - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                        -4–

Parte 2 - Casos Propuestos

   1. A partir del siguiente enunciado se desea realizar el modelo entidad-relación.
        “Se desea informatiza la gestión comercial de TOLVA COURRIER que reparte encomiendas por
        todo el Perú. Los encargados de llevar los paquetes son los vehículos repartidores, de los que
        se quiere guardar el dni, nombre, teléfono, dirección, salario y población en la que vive. De las
        encomiendas transportadas interesa conocer el código de encomienda, descripción,
        destinatario y dirección del destinatario. Un vehículo distribuye muchos paquetes, y un
        paquete sólo puede ser distribuido por un vehículo. De las provincias a las que llegan los
        paquetes interesa guardar el código de provincia y el nombre. Un paquete sólo puede llegar a
        una provincia. Sin embargo, a una provincia pueden llegar varios encomiendas. De los
        vehículos que llevan los conductores, interesa conocer la matrícula, modelo, tipo y potencia.
        Un conductor puede conducir diferentes vehículos en fechas diferentes, y un vehículo puede
        ser conducido por varios conductores”.
   2. Se trata de realizar el diseño de la base de datos en el modelo E/R para la cadena de hoteles
      Costa Real. ”Cada hotel (del que interesa almacenar su nombre, dirección, teléfono, año de
      construcción, etc.) se encuentra clasificado obligatoriamente en una categoría (por ejemplo,
      tres estrellas) pudiendo bajar o aumentar de categoría. Cada categoría tiene asociada
      diversas informaciones, como, por ejemplo, el tipo de impuestos que le corresponde y la
      descripción. Los hoteles tiene diferentes clases de habitaciones (suites, dobles, individuales,
      etc.), que se numeran de forma que se pueda identificar fácilmente la planta en la que se
      encuentran. Así pues, de cada habitación se desea guardar el código y el tipo de habitación.
      Los particulares pueden realizar reservas de las habitaciones de los hoteles. En la reserva de
      los particulares figurarán el nombre, la dirección y el teléfono. Las agencias de viaje también
      pueden realizar reservas de las habitaciones. En caso de que la reserva la realiza una agencia
      de viajes, se necesitarán los mismos datos que para los particulares, además del nombre de la
      persona para quien la agencia de viajes está realizando la reserva. En los dos casos anteriores
      también se debe almacenar el precio de la reserva, la fecha de inicio y la fecha de fin de la
      reserva”.


   3. Se desea informatizar parcialmente un determinado banco con los siguientes supuestos:
             El banco tiene distintas sucursales que se identifican por un código.
             Cada sucursal tiene una serie de cuentas corrientes asignadas a ella que se identifican
             por un código distinto para cada cuenta, aunque sea de distinta sucursal. Una cuenta
             corriente tiene asociados uno o varios clientes. Es posible, sin embargo, que las
             operaciones que puede realizar cada uno de estos clientes con la cuenta no sean las
             mismas.
             Por otra parte, cada cliente, que se identifica con su carné de identidad, puede tener
             varias cuentas y, por supuesto, unos privilegios distintos en cada una de ellas.
             Cada cuenta puede tener domiciliaciones asociadas con ella.
             Los clientes pueden tener otorgados préstamos, sin que estos estén asociados con
             ninguna de las cuentas corrientes. Cada préstamo se otorga a nombre de un solo
             cliente, y a un cliente se le puede otorgar más de un préstamo.


   4.    Realice, en el Modelo E/R, el diseño de una base de datos para una agencia de viajes que,
        para ofrecer mejor servicio a sus clientes, considera de interés tener registrada información
        referente a los diferentes tours que puede ofrecer. Tenga en cuenta lo siguiente:
                 Un tour, según su finalidad, cultural, histórica, deportiva, tiene unos determinados
                 puntos de ruta y puede repetirse varias veces en un año.
                 Definimos por viaje un tour concreto a realizar a partir de una fecha determinada.
                 Los puntos de ruta de un tour pueden ser ciudades, monumentos, zonas geográficas,
                 y se consideran de visita solamente o de visita y estancia. En este último caso, el
                 punto de ruta tiene asignado un hotel o varios.


                                 - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                     -5–

               Entendemos por cliente de un viaje a la persona que ha decidido hacerlo y ha hecho
               efectiva una señal.
               Un cliente puede confirmar su participación en más de un viaje (se sobreentiende que
               en fechas diferentes).
               Las personas que participan en un viaje pueden ser alojadas en el mismo o en
               diferente hotel.


   5.    Se desea diseñar una base de datos sobre la información de las reservas de una empresa
        dedicada al alquiler de automóviles. Los supuestos semánticos son los siguientes:
               Un determinado cliente puede tener en un momento dado varias reservas
               Una reserva la realiza un único cliente, pero puede involucrar varios vehículos.
               Es importante recoger la fecha de comienzo y de terminación de la reserva.
               Todo vehículo tiene siempre asignado un único garaje que no puede cambiar.
               Cada reserva se realiza en una determinada agencia.
               En la base de datos pueden existir clientes que no hayan hecho ninguna reserva.
               Todas las entidades tienen una clave alfanumérica que las identifica unívocamente.
   6. Un aficionado a los toros quiere crear una base de datos donde recoger todos los
      acontecimientos taurinos de cada temporada. Los supuestos son los siguientes:
              Los nombres de plaza, feria, ganadería, torero y peón son únicos.
              Una feria se celebra en una plaza y tiene un nombre único cada temporada.
              El director de una plaza puede serlo varias temporadas.
              Un peón sólo puede pertenecer a una cuadrilla de un torero durante una temporada,
              pudiendo pertenecer a la misma cuadrilla o a otra la siguiente temporada.
              El número de una corrida es único y secuencial dentro de una feria.
              En una corrida puede haber toros de distintas ganaderías.
              El número del toro en una ganadería es único.


   7. Realice el esquema E/R para una base de datos en la que se desea almacenar la información
      relativa a algunos aspectos del campeonato mundial de fútbol considerando los siguientes
      supuestos:
               Un jugador pertenece a un único equipo y no hay dos jugadores con el mismo
               nombre.
               Un jugador puede actuar en varios puestos distintos, pero en un determinado partido
               sólo puede jugar en un puesto.
               En cada partido intervienen tres colegiados: un juez de línea para la banda derecha,
               uno para la izquierda y un árbitro.
               Un colegiado puede realizar una función en un partido y otra distinta en otro partido.
               Cada partido involucra a dos equipos.
               Es obligatorio en todo momento que un jugador pertenezca a un equipo determinado
               y no podrá cambiar de equipo a lo largo del mundial.


   8.    Construya el esquema conceptual en el modelo E/R extendido, que refleje toda la
        información necesaria para la gestión de las líneas de metro de una determinada ciudad. Los
        supuestos considerados son los siguientes:
                Una línea está compuesta por una serie de estaciones en un orden determinado,
                siendo muy importante recoger la información de ese orden.
                Cada estación pertenece por lo menos a una línea, pudiendo pertenecer a varias.
                Una estación nunca puede dejar de pertenecer a una línea a la que anteriormente
                pertenecía.




                               - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                     -6–

               Cada estación puede tener varios accesos, pero consideramos que un acceso sólo
               puede pertenecer a una estación.
               Cada línea tiene asignada una serie de trenes, no pudiendo suceder que un tren esté
               asignado a más de una línea, pero sí que no esté asignado a ninguna. (por ejemplo si
               se encuentra en reparación).
               Cada línea tiene asignados como mínimo tantos trenes como estaciones tenga y como
               máximo el doble del número de estaciones.
               Algunas estaciones tienen asignadas cocheras, y cada tren tiene asignada una
               cochera.
               Un tren puede cambiar de cochera asignada, pero no quedar sin ella.
               Interesa conocer todos los accesos a una línea.


   9. Se describe a continuación una base de datos que contiene la información relativa a una
      empresa que se dedica a la fabricación de motores. Dicha empresa tiene interés en mantener
      información sobre los distintos tipos de motores que fabrica. Se pide construir el esquema E/R
      correspondiente.
              La empresa está dividida en secciones en la que están asignados obligatoriamente los
              empleados, los cuales tienen que pertenecer a una sola sección. A cada sección se le
              puede asignar la fabricación de uno o varios tipos de motores, existiendo secciones
              generales (departamento de administración, de proceso de datos, etc.) que no tienen
              asignado ningún tipo de motor en concreto; nunca un tipo de motor puede ser
              fabricado por más de una sección, ni esta puede cambiar una vez que se le ha
              asignado la fabricación de un determinado motor.
              Entre los empleados que trabajan en un tipo de motor siempre habrá un responsable,
              siendo ésta información de interés para la empresa. Un empleado puede estar
              trabajando en más de un tipo de motor.
              Los empleados pueden tener familiares a su cargo, cuyos datos conviene guardar en
              la base de datos.
              La empresa utiliza piezas y desea conocer las estructuras del producto. A estos
              efectos un motor es una pieza.


   10. Se desea diseñar una base de datos que recoja la organización de una universidad. Se
       considera que:
               Los departamentos pueden estar en una sola facultad o ser interfacultativos,
               agrupando en este caso cátedras que pertenecen a facultades distintas.
               Una cátedra se encuentra en un único departamento.
               Una cátedra pertenece a una sola facultad.
               Un profesor está siempre asignado a un único departamento y adscrito a una o varias
               cátedras, pudiendo cambiar de cátedra pero no de departamento. Interesa la fecha
               en que un profesor es adscrito a una cátedra.
               Existen áreas de conocimiento, y todo departamento tendrá un área de conocimiento.


   11. Un estudio de ingeniería desea crear una base de datos sobre los proyectos que desarrolla. En
       él, los ingenieros pueden trabajar en varios proyectos a la vez y en cada proyecto
       desempeñar una función diferente. Cada proyecto tiene un único Ingeniero Jefe. Un mismo
       ingeniero jefe no puede serlo de dos proyectos a la vez. En ocasiones, los proyectos pueden
       formar parte de otros proyectos. Estos pueden realizarse por encargo para terceras empresas
       o por iniciativa del propio estudio. Cuando el proyecto se realiza por encargo, la empresa que
       lo contrata puede proporcionar ingenieros de su plantilla para participar en el proyecto, e
       interesa recoger las horas dedicadas por estos en el proyecto para el que trabaja. Nunca un
       ingeniero externo puede realizar la función de ingeniero jefe.



                               - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                    -7–

   12. Una biblioteca quiere informatizar parcialmente su gestión. Para ello desea crear una base de
       datos en la que recoger las revistas que tiene, los artículos publicados, los autores de los
       mismos y los temas tratados.
               Las revistas tratan más de un tema, e interesa recoger esta información.
               Un artículo puede aparecer en más de una revista. Interesa recoger la fecha de
               publicación de un artículo en una revista, y el número de la revista en que aparece.
               Los autores pueden ser colaboradores o fijos. En este último caso, interesa recoger
               los autores fijos de cada revista, así como el cargo que ocupan. De los autores que
               son sólo colaboradores interesa conocer las revistas con las que colaboran y el
               número de horas que dedican a cada una.
               Los autores pueden escribir sobre cualquier tema, por lo que no interesa recoger los
               temas cultivados por un autor, pero sí es necesario saber qué tema o temas ha
               tocado cada autor en sus artículos.


   13. Un laboratorio de documentación se dedica a la traducción y maquetación de documentos
       técnicos para empresas. Para ello cuenta con traductores y maquetadores.
               Los documentos pueden ser de los siguientes tipos: programas informáticos,
               acompañados o no de sus correspondientes manuales, o sólo manuales u otros
               documentos impresos.
               Un traductor nunca se dedica a la maquetación y un maquetador nunca traduce.
               Los programas sólo se traducen, no necesitan maquetación.
               Los traductores pueden traducir más de un idioma e interesa conocer el nivel de
               conocimientos de cada idioma de cada traductor.
               Un traductor sólo trabaja en la traducción de un documento a la vez, aunque en la
               traducción de un documento pueden trabajar varios traductores al mismo tiempo.
               Interesa recoger el idioma en que ha trabajado cada traductor en cada documento.
               En la composición de un documento impreso puede trabajar más de un maquetador,
               que, a su vez, puede estar trabajando en la maquetación de varios documentos al
               mismo tiempo.
               Son datos de interés el número de palabras del documento y el número de páginas
               del documento impreso.
               Cada documento es propiedad de una única empresa, la cual puede encargar la
               traducción y/o maquetación de varios documentos. Interesa conocer la fecha en que
               la empresa entrega el documento para su traducción y/o maquetación.


   14. Se desea crear una base de datos de investigaciones en curso. Las entidades y supuestos
       semánticos que definen el problema son:
      1. Proyecto de investigación (nombre objetivos, áreas científicas,...).
      2. Investigador (nombre, domicilio,...).
      3. Entidad colaboradora (Nombre, razón social,...).
      Además de los supuestos semánticos del mundo real se suponen los siguientes:
              Un proyecto puede formar parte de otro más complejo.
              Un investigador puede trabajar en varios proyectos a la vez, y en cada proyecto
              puede tener una función diferente (investigador principal, consultor,...).
              Para cada proyecto debe existir un investigador principal único.
              Un mismo investigador no puede hacer la función de investigador principal en dos
              proyectos a la vez.
              Las entidades colaboradoras pueden ser de dos tipos: Patrocinadoras (las que
              financian los proyectos aportando una subvención) y de colaboración científica
              (aquellas a las que pertenecen los investigadores).




                               - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                      -8–

   15. Se trata de diseñar la base de datos de una agencia aeroespacial. En ella se pretende
       almacenar toda la información referente a sus empleados técnicos: astronautas y científicos,
       además de los familiares que dependen de estos.
              Los empleados participan en una serie de misiones en un periodo determinado de
              tiempo, dato que es de interés recoger, pero como máximo, a lo largo de su estancia
              en la agencia pueden participar en diez misiones.
              Cada misión es propuesta por un científico en una fecha determinada, aunque hay
              alguna de estas misiones que constan de otras propuestas por otros científicos.
              Estas misiones están desarrolladas con vistas al estudio de uno o varios planetas. Es
              por ello que interesa recoger la información referente a éstos últimos, así como de los
              satélites que tienen o del sistema al que pertenecen. Los astros pertenecientes a
              estos sistemas también son de interés.
              La agencia dispone de una flota de naves espaciales de distintos tipos que realizan
              vuelos entre dos fechas en cada una de las misiones. Estas naves son manejadas en
              una fecha concreta por tripulantes espaciales de dos tipos distintos, astronautas o
              androides mecánicos.
              Una vez finalizada la misión se pretende almacenar sus conclusiones y la fecha de
              finalización.


   16. Una empresa privada de transportes desea realizar un diseño de la red de autobuses de que
       dispone. Esta tiene las siguientes características:
               La red está formada por 25 líneas de autobuses, 5 de ellas nocturnas.
               Cada autobús está asignado a una única línea pudiendo cambiar en función de la
               demanda de una línea a otra. Es importante conocer el número de autobuses que
               tiene asignados cada línea.
               Para cada línea se desea conocer el número y el estado de todas sus paradas.
               Los conductores pueden estar asignados tanto a líneas diurnas como nocturnas,
               dependiendo del turno que realicen.
               Es importante conocer en todo momento la situación, tramo (recorrido entre dos
               paradas) o parada de cada autobús.
            Se pide:
            Realice un esquema Entidad Relación Extendido con las premisas anteriores.

   17. Se desea crear una base de datos que recoja información de una red ferroviaria de nuestro
       país que tiene las siguientes características:
               En una estación existen una serie de objetos: circuitos de vía, agujas, señales y pasos
               a nivel. Cada estación debe tener como mínimo un circuito de vía y dos señales.
               Algunas estaciones no tienen agujas. En caso de que las tengan, estas pueden ser
               con motor o sin motor, siendo importante recoger cuántas agujas en total tiene cada
               estación.
               Las señales pueden ser de varios tipos: de bloqueo, de maniobra, de retroceso,
               teniendo en cuenta que una señal es de retroceso sólo si es también de maniobra.
               Las estaciones tienen o bien dos pasos a nivel o bien ninguno.
               Cuando un tren entra en una estación, deja de estar en el tramo del que procede.
               Cuando sale de la estación, pasa inmediatamente a un nuevo tramo.
               Es importante conocer en todo momento la situación (tramo o estación) de cada tren.
          Se pide:
          Realice un esquema Entidad Relación Extendido con las premisas anteriores.
   18. Una empresa privada se dedica a la gestión de varios teatros. Entre otros temas se ocupa de
       recoger la siguiente información:




                               - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                      -9–

               Gestión de reservas. En cada teatro se pueden realizar reservas para los espectáculos.
               De cada reserva se recoge información del nombre de la persona que ha realizado la
               reserva, el número de entradas pedidas, y la fecha de la representación.
               En una misma temporada en un teatro se pueden realizar varias representaciones de
               diferentes tipos: ballets, conciertos u obras de teatro. También puede ocurrir que una
               misma representación se mantenga varias temporadas.
               Se recoge información sobre los artistas que trabajan en cada representación:
               nombre, representante, papel que interpreta en cada representación en la que actúa.
               Para la organización de los camerinos de cada teatro es interesante saber a qué
               artista se le asigna cada camerino.
               Cada teatro tiene un único director durante una temporada, pudiendo cambiar de
               director en la temporada siguiente.
       Se pide:
       Aplique el modelo Entidad Relación al enunciado anterior.
       19. La liga de fútbol profesional, presidida por Carlos “Cachito” Ramírez , ha decidido
           informatizar sus instalaciones creando una base de datos para guardar la información de
           los partidos que se juegan en la liga. Se desea guardar en primer lugar los datos de los
           jugadores. De cada jugador se quiere guardar el nombre, fecha de nacimiento y posición
           en la que juega (portero, defensa, centrocampista…). Cada jugador tiene un código de
           jugador que lo identifica de manera única. De cada uno de los equipos de la liga es
           necesario registrar el nombre del equipo, nombre del estadio en el que juega, el aforo
           que tiene, el año de fundación del equipo y la ciudad de la que es el equipo. Cada equipo
           también tiene un código que lo identifica de manera única. Un jugador solo puede
           pertenecer a un único equipo. De cada partido que los equipos de la liga juegan hay que
           registrar la fecha en la que se juega el partido, los goles que ha metido el equipo de casa
           y los goles que ha metido el equipo de fuera. Cada partido tendrá un código numérico
           para identificar el partido. También se quiere llevar un recuento de los goles que hay en
           cada partido. Se quiere almacenar el minuto en el que se realizar el gol y la descripción
           del gol. Un partido tiene varios goles y un jugador puede meter varios goles en un
           partido. Por último se quiere almacenar, en la base de datos, los datos de los presidentes
           de los equipos de fútbol (dni, nombre, apellidos, fecha de nacimiento, equipo del que es
           presidente y año en el que fue elegido presidente). Un equipo de fútbol tan sólo puede
           tener un presidente, y una persona sólo puede ser presidente de un equipo de la liga.
           Diseñar el modelo entidad-relación resultante realizando las relaciones oportunas entre
           tablas




                               - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                        - 10 –

Laboratorio Nº 03

Objetivos:
   1. Diseño Lógico usando una herramienta de modelamiento de Datos
   2. Planteamiento de un caso- Enunciado del Laboratorio 02
   3. Elección de un DBMS destino
   4. Entidades, relaciones.

   Parte 1
   Diseño Lógico usando la herramienta case Erwin




   Parte 2
   Utilizando el dbdesign, crear el mismo modelo y comentar las diferencias

Laboratorio Nº 04

Objetivos:
   1. Diseño Físico usando una herramienta de modelamiento de Datos.
   2. Tipos de Datos del DBMS y generación de Esquema.
   3. Exporta el modelo físico a formato html
   4. Script para la generación de objeto de Base de Datos.

   Parte 1
          •    Verificar que el DBMS sea el adecuado (Estudio de Encuesta) para la
               generación de secuencias SQL y crear los objetos de la base datos.
           •   Asegúrese trabajar con la vista principal.


                              - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                   - 11 –

           •   Definir los tipos de datos, a partir de los subdominio.
           •   Colocar los tipo de datos para las columnas
           •   Exportar el modelo
           •   Crear el archivo sql (Archivo script)


Generación del Script (empresa.sql)


CREATE TABLE Actividad (
    IdPer           char(6) NOT NULL,
    fin           datetime NULL,
    Inicio         datetime NULL,
    dedicacion       char(18) NULL,
    IdAct          int NULL,
    IdPry          char(6) NOT NULL
)
go


ALTER TABLE Actividad
    ADD PRIMARY KEY NONCLUSTERED (IdPer, IdPry, IdAct)
go


CREATE TABLE Cargo (
    IdCargo          char(2) NULL,
    instrucciominima   char(18) NULL,
    porccomision      char(18) NULL,
    porbonificacion   char(18) NULL,
    NombreCargo         char(18) NULL
)
go


ALTER TABLE Cargo
    ADD PRIMARY KEY NONCLUSTERED (IdCargo)
go


CREATE TABLE Cliente (
    Ruc            char(11) NULL,
    NombreCli        varchar(40) NULL,
    IdCli         char(6) NULL
)
go


ALTER TABLE Cliente
    ADD PRIMARY KEY NONCLUSTERED (IdCli)
go


CREATE TABLE Departamento (
    DepSuperior     char(3) NULL,
    Responsable     char(6) NULL,
    NombreDep        varchar(20) NULL,



                                - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                            - 12 –

     IdDep          char(3) NULL
)
go


ALTER TABLE Departamento
    ADD PRIMARY KEY NONCLUSTERED (IdDep)
go


CREATE TABLE Persona (
    Comision         decimal(5,2) NULL,
    Bonificacion     decimal(5,2) NULL,
    Sueldo         decimal(5,2) NULL,
    Foto          image NULL,
    FecNacimiento       datetime NULL,
    Sexo           char(1) NULL,
    Instruccion      int NULL,
    FecIngreso        datetime NULL,
    IdDep           char(3) NOT NULL,
    Nombre            char(18) NULL,
    Apellido       char(18) NULL,
    IdPer         char(6) NULL,
    IdCargo         char(2) NOT NULL
)
go


ALTER TABLE Persona
    ADD PRIMARY KEY NONCLUSTERED (IdPer)
go


CREATE TABLE Proyecto (
    PrySuperior      char(18) NULL,
    CanPersonas       char(18) NULL,
    FecFin         char(18) NULL,
    FecInicio       char(18) NULL,
    NombreProy        char(18) NULL,
    IdCli        char(6) NOT NULL,
    IdPry          char(6) NULL,
    DepResponsable      char(3) NOT NULL,
    Jefe          char(6) NOT NULL
)
go


ALTER TABLE Proyecto
    ADD PRIMARY KEY NONCLUSTERED (IdPry)
go


ALTER TABLE Actividad
    ADD FOREIGN KEY (IdPry)
                   REFERENCES Proyecto
go




                              - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                            - 13 –

ALTER TABLE Actividad
    ADD FOREIGN KEY (IdPer)
                   REFERENCES Persona
go


ALTER TABLE Departamento
    ADD FOREIGN KEY (IdDep)
                 REFERENCES Departamento
go


ALTER TABLE Persona
    ADD FOREIGN KEY (IdCargo)
                  REFERENCES Cargo
go


ALTER TABLE Persona
    ADD FOREIGN KEY (IdDep)
                  REFERENCES Departamento
go


ALTER TABLE Proyecto
    ADD FOREIGN KEY (IdCli)
                  REFERENCES Cliente
go


ALTER TABLE Proyecto
    ADD FOREIGN KEY (IdPry)
                  REFERENCES Proyecto
go


ALTER TABLE Proyecto
    ADD FOREIGN KEY (Jefe)
                  REFERENCES Persona
go


ALTER TABLE Proyecto
    ADD FOREIGN KEY (DepResponsable)
                  REFERENCES Departamento
go




                              - Ing. Franklin Guerrero Campos -
Guias de Laboratorios de Base de Datos                                                     - 14 –

                                                                             NORMALIZACIÓN DE DATOS
            Laboratorio Nº 05

           Objetivos:
           1. Aplicar cada una de las formas normales que exige esta técnica
           2. Eliminar todo tipo de anomalías de los modelos de base de datos.


            Parte 1

                      •   Analizar el caso propuesto
                      •   Desarrollar cada una de las formas normales, hasta llegar al modelo final.


               CASO : Normalización de Datos – Tienda de Componentes electrónicos – EL ELECTRICISTA


IdPedido IdProveedor NomProv ApeProv RazonSocial DirecProv RucProv TelProv FecPed CantPed CodTipo NomTipo CodComp NomComp NumFact FecFact



dCliente NomCli ApeCli RucCli DirecCli DniCli TelCli CodEmp NomEmp ApeEmp DirecEmp DniEmp TelEmp FecIngEmp FecNacEmp SalEmp CantFact TotalFac




                                                                          - Ing. Franklin Guerrero Campos -

Más contenido relacionado

La actualidad más candente (20)

Access examen
Access examenAccess examen
Access examen
 
Ejercicios con diagramas modelo Entidad Relacion
Ejercicios con diagramas modelo Entidad RelacionEjercicios con diagramas modelo Entidad Relacion
Ejercicios con diagramas modelo Entidad Relacion
 
BASE DE DATOS
BASE DE DATOSBASE DE DATOS
BASE DE DATOS
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Problemas de diseño de base de datos
Problemas de diseño de base de datosProblemas de diseño de base de datos
Problemas de diseño de base de datos
 
Prob disenyo
Prob disenyoProb disenyo
Prob disenyo
 
Ejercicios de internet de sgbd
Ejercicios de internet de sgbdEjercicios de internet de sgbd
Ejercicios de internet de sgbd
 
Ejercicio 14
Ejercicio 14Ejercicio 14
Ejercicio 14
 
Modelado de datos
Modelado de datosModelado de datos
Modelado de datos
 
Ejercicio 14 BD
Ejercicio 14 BDEjercicio 14 BD
Ejercicio 14 BD
 
E3 ejercicio empresa
E3 ejercicio empresaE3 ejercicio empresa
E3 ejercicio empresa
 
Practica de modelamiento resuelta
Practica de modelamiento resueltaPractica de modelamiento resuelta
Practica de modelamiento resuelta
 
Ejercicios der de base de datos 2019
Ejercicios der de  base de datos 2019Ejercicios der de  base de datos 2019
Ejercicios der de base de datos 2019
 
Enunciados e r
Enunciados e rEnunciados e r
Enunciados e r
 
22 ejercicios base de datos
22 ejercicios base de datos 22 ejercicios base de datos
22 ejercicios base de datos
 
Practica iv base datos-ii
Practica iv base datos-iiPractica iv base datos-ii
Practica iv base datos-ii
 
Base de datos 14
Base de datos 14Base de datos 14
Base de datos 14
 
Ejercicios del 1 al 9
Ejercicios del 1 al 9Ejercicios del 1 al 9
Ejercicios del 1 al 9
 
Base de datos unidad 2 ejercicios a resolver
Base de datos unidad 2   ejercicios a resolverBase de datos unidad 2   ejercicios a resolver
Base de datos unidad 2 ejercicios a resolver
 
Ejercicios modelo entidad relacion
Ejercicios modelo entidad relacionEjercicios modelo entidad relacion
Ejercicios modelo entidad relacion
 

Destacado

Analisis y diseño
Analisis y diseñoAnalisis y diseño
Analisis y diseñoJorge Garcia
 
Prueba Con SlideShare
Prueba Con SlideSharePrueba Con SlideShare
Prueba Con SlideShareernani89
 
Coleccion de mariposas
Coleccion de mariposasColeccion de mariposas
Coleccion de mariposasemim3m
 
Metricas de proceso y proyecto
Metricas de proceso y proyectoMetricas de proceso y proyecto
Metricas de proceso y proyectoEdison Tobar
 
Herramientas asistidas por_computadora
Herramientas asistidas por_computadoraHerramientas asistidas por_computadora
Herramientas asistidas por_computadoraJorge Garcia
 
Pasos para diseñar bases de datos relacionales
Pasos para diseñar bases de datos relacionalesPasos para diseñar bases de datos relacionales
Pasos para diseñar bases de datos relacionalessilsilvetti
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad IILuis Caiza
 
Metodología xp
Metodología xpMetodología xp
Metodología xpPiskamen
 
tipos sistemas de informacion tps-mis-dss-ess
tipos sistemas de informacion tps-mis-dss-esstipos sistemas de informacion tps-mis-dss-ess
tipos sistemas de informacion tps-mis-dss-essGiancarlo Nebiolo Navidad
 

Destacado (11)

Analisis y diseño
Analisis y diseñoAnalisis y diseño
Analisis y diseño
 
Prueba Con SlideShare
Prueba Con SlideSharePrueba Con SlideShare
Prueba Con SlideShare
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 
Coleccion de mariposas
Coleccion de mariposasColeccion de mariposas
Coleccion de mariposas
 
Metricas de proceso y proyecto
Metricas de proceso y proyectoMetricas de proceso y proyecto
Metricas de proceso y proyecto
 
Herramientas asistidas por_computadora
Herramientas asistidas por_computadoraHerramientas asistidas por_computadora
Herramientas asistidas por_computadora
 
Pasos para diseñar bases de datos relacionales
Pasos para diseñar bases de datos relacionalesPasos para diseñar bases de datos relacionales
Pasos para diseñar bases de datos relacionales
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad II
 
Metodología xp
Metodología xpMetodología xp
Metodología xp
 
tipos sistemas de informacion tps-mis-dss-ess
tipos sistemas de informacion tps-mis-dss-esstipos sistemas de informacion tps-mis-dss-ess
tipos sistemas de informacion tps-mis-dss-ess
 

Similar a Guias Laboratorios Base Datos

Ejercicios UML.pdf
Ejercicios UML.pdfEjercicios UML.pdf
Ejercicios UML.pdfANDRES842127
 
Taller modelo entidad relacion
Taller modelo entidad relacionTaller modelo entidad relacion
Taller modelo entidad relacionBrayan Vega Diaz
 
Ejercicios de diseño y navegación de bases de datos
Ejercicios de diseño y navegación de bases de datosEjercicios de diseño y navegación de bases de datos
Ejercicios de diseño y navegación de bases de datosJaime David Romero Olivo
 
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNAccess.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNjannetrivasreyes1
 
Ejercicio grupo1 grupo2_grupo3
Ejercicio grupo1 grupo2_grupo3Ejercicio grupo1 grupo2_grupo3
Ejercicio grupo1 grupo2_grupo3t763rm3n
 
9 ejercicios base de datos mision
9 ejercicios base de datos mision9 ejercicios base de datos mision
9 ejercicios base de datos misionLine Isenia Diaz
 
Doc1 170403072345
Doc1 170403072345Doc1 170403072345
Doc1 170403072345UB05
 
02 tarea02 diseo_er
02 tarea02 diseo_er02 tarea02 diseo_er
02 tarea02 diseo_erCecy N Cruz
 
Practica de Laboratorio 1
Practica de Laboratorio 1Practica de Laboratorio 1
Practica de Laboratorio 1Arnold Ortiz
 
Enunciados%20problemas%20e R
Enunciados%20problemas%20e REnunciados%20problemas%20e R
Enunciados%20problemas%20e RFrancisco Godoy
 
Ejercicios de entidad relacion extendida
Ejercicios de entidad relacion extendidaEjercicios de entidad relacion extendida
Ejercicios de entidad relacion extendidaDavid Rocha Bardales
 

Similar a Guias Laboratorios Base Datos (20)

erd.pdf
erd.pdferd.pdf
erd.pdf
 
Ejercicios UML.pdf
Ejercicios UML.pdfEjercicios UML.pdf
Ejercicios UML.pdf
 
Guía 1 de ejercicios MER de Internet
Guía 1 de ejercicios MER de InternetGuía 1 de ejercicios MER de Internet
Guía 1 de ejercicios MER de Internet
 
Taller modelo entidad relacion
Taller modelo entidad relacionTaller modelo entidad relacion
Taller modelo entidad relacion
 
Guía 1 Ejercicios MER
Guía 1 Ejercicios MERGuía 1 Ejercicios MER
Guía 1 Ejercicios MER
 
Modelo entidad relacion
Modelo entidad relacionModelo entidad relacion
Modelo entidad relacion
 
Ejercicios de diseño y navegación de bases de datos
Ejercicios de diseño y navegación de bases de datosEjercicios de diseño y navegación de bases de datos
Ejercicios de diseño y navegación de bases de datos
 
Modelo entidad relacion extendido
Modelo entidad relacion extendidoModelo entidad relacion extendido
Modelo entidad relacion extendido
 
Banco de ejercicios mer
Banco de ejercicios merBanco de ejercicios mer
Banco de ejercicios mer
 
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNAccess.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
Access.pptxNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
 
Ejercicio grupo1 grupo2_grupo3
Ejercicio grupo1 grupo2_grupo3Ejercicio grupo1 grupo2_grupo3
Ejercicio grupo1 grupo2_grupo3
 
9 ejercicios base de datos mision
9 ejercicios base de datos mision9 ejercicios base de datos mision
9 ejercicios base de datos mision
 
Doc1 170403072345
Doc1 170403072345Doc1 170403072345
Doc1 170403072345
 
02 tarea02 diseo_er
02 tarea02 diseo_er02 tarea02 diseo_er
02 tarea02 diseo_er
 
Practica de Laboratorio 1
Practica de Laboratorio 1Practica de Laboratorio 1
Practica de Laboratorio 1
 
Enunciados%20problemas%20e R
Enunciados%20problemas%20e REnunciados%20problemas%20e R
Enunciados%20problemas%20e R
 
Ejercicios de entidad relacion extendida
Ejercicios de entidad relacion extendidaEjercicios de entidad relacion extendida
Ejercicios de entidad relacion extendida
 
Guía 3 de ejercicios MER-E de Internet
Guía 3 de ejercicios MER-E de InternetGuía 3 de ejercicios MER-E de Internet
Guía 3 de ejercicios MER-E de Internet
 
Guía 2 de ejercicios MER de Internet
Guía 2 de ejercicios MER de InternetGuía 2 de ejercicios MER de Internet
Guía 2 de ejercicios MER de Internet
 
Guía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER ExtendidoGuía 3 Ejercicios MER Extendido
Guía 3 Ejercicios MER Extendido
 

Guias Laboratorios Base Datos

  • 1. GUIAS DE LABORATORIO BASE DEDATOS CURSO: Base de Datos CICLO IV SEMESTRE Ing. Franklin Guerrero Campos SEMANA Profesor del Curso 01-08 2010-1 Material Didáctico para uso exclusivo en clase
  • 2. Guias de Laboratorios de Base de Datos -2– Laboratorio Nº 01 Objetivos: Uso de la Herramienta Case Erwin, DbDesign, embarcadero para el modelado de Base de Datos. • Modelo Lógico • Modelo Físico • Modelos Lógicos / Físico Notación • IDEF1X • IE • Dimensional Model Parte 1 • Instalación de las Herramientas Case para el modelado de Base de Datos. • Descripción del Entorno de la Herramienta Case. Parte 2 Instalar otra herramienta case de distribución libre (dbdesign) y Realizar un cuadro comparativo. - Ing. Franklin Guerrero Campos -
  • 3. Guias de Laboratorios de Base de Datos -3– Laboratorio Nº 02 Objetivos: 1. Modelado de Datos 2. Planteamiento de un caso 3. Entidades, dominios, atributos. Parte 1 – Desarrollo de un Caso: Elabora el modelo de datos lógicos para una empresa dedicada principalmente al servicio de consultaría, que tiene las siguientes características: La empresa se organiza en DEPARTAMENTOS, en cada uno de los cuales trabajan muchas personas. Una PERSONA (empleado), trabaja y esta asignada oficialmente en un solo departamento. Un departamento, puede responsabilizarse de algunos proyectos. Cada proyecto es “jefaturado” por una persona (el jefe de proyecto), y puede estar formado por muchos subproyectos, a cada uno de los cuales, se le puede considerar como un pequeño proyecto. A cada proyecto (o subproyecto) se asigna varias personas que deben realizar una labor específica, asignando un porcentaje (%) de su tiempo al mismo. A esta información se le denomina actividad, por persona, o simplemente, ACTIVIDAD. Los datos necesarios son los siguientes, para las personas apellidos paterno, nombres, teléfono de su domicilio, trabajo, la fecha de ingreso a la empresa, el identificador del cargo desempeñado, nivel o grado de instrucción (que es un numero de cero a veinte), sexo, fecha de nacimiento, imagen fotográfica de la persona, el sueldo en soles, bonificación en soles, y una comisión en dólares. De los clientes se usará, los datos nombres, y RUC. Para los proyectos, el nombre del proyecto, la fecha del inicio del proyecto, la fecha final del proyecto y la cantidad de personas participantes. - Ing. Franklin Guerrero Campos -
  • 4. Guias de Laboratorios de Base de Datos -4– Parte 2 - Casos Propuestos 1. A partir del siguiente enunciado se desea realizar el modelo entidad-relación. “Se desea informatiza la gestión comercial de TOLVA COURRIER que reparte encomiendas por todo el Perú. Los encargados de llevar los paquetes son los vehículos repartidores, de los que se quiere guardar el dni, nombre, teléfono, dirección, salario y población en la que vive. De las encomiendas transportadas interesa conocer el código de encomienda, descripción, destinatario y dirección del destinatario. Un vehículo distribuye muchos paquetes, y un paquete sólo puede ser distribuido por un vehículo. De las provincias a las que llegan los paquetes interesa guardar el código de provincia y el nombre. Un paquete sólo puede llegar a una provincia. Sin embargo, a una provincia pueden llegar varios encomiendas. De los vehículos que llevan los conductores, interesa conocer la matrícula, modelo, tipo y potencia. Un conductor puede conducir diferentes vehículos en fechas diferentes, y un vehículo puede ser conducido por varios conductores”. 2. Se trata de realizar el diseño de la base de datos en el modelo E/R para la cadena de hoteles Costa Real. ”Cada hotel (del que interesa almacenar su nombre, dirección, teléfono, año de construcción, etc.) se encuentra clasificado obligatoriamente en una categoría (por ejemplo, tres estrellas) pudiendo bajar o aumentar de categoría. Cada categoría tiene asociada diversas informaciones, como, por ejemplo, el tipo de impuestos que le corresponde y la descripción. Los hoteles tiene diferentes clases de habitaciones (suites, dobles, individuales, etc.), que se numeran de forma que se pueda identificar fácilmente la planta en la que se encuentran. Así pues, de cada habitación se desea guardar el código y el tipo de habitación. Los particulares pueden realizar reservas de las habitaciones de los hoteles. En la reserva de los particulares figurarán el nombre, la dirección y el teléfono. Las agencias de viaje también pueden realizar reservas de las habitaciones. En caso de que la reserva la realiza una agencia de viajes, se necesitarán los mismos datos que para los particulares, además del nombre de la persona para quien la agencia de viajes está realizando la reserva. En los dos casos anteriores también se debe almacenar el precio de la reserva, la fecha de inicio y la fecha de fin de la reserva”. 3. Se desea informatizar parcialmente un determinado banco con los siguientes supuestos: El banco tiene distintas sucursales que se identifican por un código. Cada sucursal tiene una serie de cuentas corrientes asignadas a ella que se identifican por un código distinto para cada cuenta, aunque sea de distinta sucursal. Una cuenta corriente tiene asociados uno o varios clientes. Es posible, sin embargo, que las operaciones que puede realizar cada uno de estos clientes con la cuenta no sean las mismas. Por otra parte, cada cliente, que se identifica con su carné de identidad, puede tener varias cuentas y, por supuesto, unos privilegios distintos en cada una de ellas. Cada cuenta puede tener domiciliaciones asociadas con ella. Los clientes pueden tener otorgados préstamos, sin que estos estén asociados con ninguna de las cuentas corrientes. Cada préstamo se otorga a nombre de un solo cliente, y a un cliente se le puede otorgar más de un préstamo. 4. Realice, en el Modelo E/R, el diseño de una base de datos para una agencia de viajes que, para ofrecer mejor servicio a sus clientes, considera de interés tener registrada información referente a los diferentes tours que puede ofrecer. Tenga en cuenta lo siguiente: Un tour, según su finalidad, cultural, histórica, deportiva, tiene unos determinados puntos de ruta y puede repetirse varias veces en un año. Definimos por viaje un tour concreto a realizar a partir de una fecha determinada. Los puntos de ruta de un tour pueden ser ciudades, monumentos, zonas geográficas, y se consideran de visita solamente o de visita y estancia. En este último caso, el punto de ruta tiene asignado un hotel o varios. - Ing. Franklin Guerrero Campos -
  • 5. Guias de Laboratorios de Base de Datos -5– Entendemos por cliente de un viaje a la persona que ha decidido hacerlo y ha hecho efectiva una señal. Un cliente puede confirmar su participación en más de un viaje (se sobreentiende que en fechas diferentes). Las personas que participan en un viaje pueden ser alojadas en el mismo o en diferente hotel. 5. Se desea diseñar una base de datos sobre la información de las reservas de una empresa dedicada al alquiler de automóviles. Los supuestos semánticos son los siguientes: Un determinado cliente puede tener en un momento dado varias reservas Una reserva la realiza un único cliente, pero puede involucrar varios vehículos. Es importante recoger la fecha de comienzo y de terminación de la reserva. Todo vehículo tiene siempre asignado un único garaje que no puede cambiar. Cada reserva se realiza en una determinada agencia. En la base de datos pueden existir clientes que no hayan hecho ninguna reserva. Todas las entidades tienen una clave alfanumérica que las identifica unívocamente. 6. Un aficionado a los toros quiere crear una base de datos donde recoger todos los acontecimientos taurinos de cada temporada. Los supuestos son los siguientes: Los nombres de plaza, feria, ganadería, torero y peón son únicos. Una feria se celebra en una plaza y tiene un nombre único cada temporada. El director de una plaza puede serlo varias temporadas. Un peón sólo puede pertenecer a una cuadrilla de un torero durante una temporada, pudiendo pertenecer a la misma cuadrilla o a otra la siguiente temporada. El número de una corrida es único y secuencial dentro de una feria. En una corrida puede haber toros de distintas ganaderías. El número del toro en una ganadería es único. 7. Realice el esquema E/R para una base de datos en la que se desea almacenar la información relativa a algunos aspectos del campeonato mundial de fútbol considerando los siguientes supuestos: Un jugador pertenece a un único equipo y no hay dos jugadores con el mismo nombre. Un jugador puede actuar en varios puestos distintos, pero en un determinado partido sólo puede jugar en un puesto. En cada partido intervienen tres colegiados: un juez de línea para la banda derecha, uno para la izquierda y un árbitro. Un colegiado puede realizar una función en un partido y otra distinta en otro partido. Cada partido involucra a dos equipos. Es obligatorio en todo momento que un jugador pertenezca a un equipo determinado y no podrá cambiar de equipo a lo largo del mundial. 8. Construya el esquema conceptual en el modelo E/R extendido, que refleje toda la información necesaria para la gestión de las líneas de metro de una determinada ciudad. Los supuestos considerados son los siguientes: Una línea está compuesta por una serie de estaciones en un orden determinado, siendo muy importante recoger la información de ese orden. Cada estación pertenece por lo menos a una línea, pudiendo pertenecer a varias. Una estación nunca puede dejar de pertenecer a una línea a la que anteriormente pertenecía. - Ing. Franklin Guerrero Campos -
  • 6. Guias de Laboratorios de Base de Datos -6– Cada estación puede tener varios accesos, pero consideramos que un acceso sólo puede pertenecer a una estación. Cada línea tiene asignada una serie de trenes, no pudiendo suceder que un tren esté asignado a más de una línea, pero sí que no esté asignado a ninguna. (por ejemplo si se encuentra en reparación). Cada línea tiene asignados como mínimo tantos trenes como estaciones tenga y como máximo el doble del número de estaciones. Algunas estaciones tienen asignadas cocheras, y cada tren tiene asignada una cochera. Un tren puede cambiar de cochera asignada, pero no quedar sin ella. Interesa conocer todos los accesos a una línea. 9. Se describe a continuación una base de datos que contiene la información relativa a una empresa que se dedica a la fabricación de motores. Dicha empresa tiene interés en mantener información sobre los distintos tipos de motores que fabrica. Se pide construir el esquema E/R correspondiente. La empresa está dividida en secciones en la que están asignados obligatoriamente los empleados, los cuales tienen que pertenecer a una sola sección. A cada sección se le puede asignar la fabricación de uno o varios tipos de motores, existiendo secciones generales (departamento de administración, de proceso de datos, etc.) que no tienen asignado ningún tipo de motor en concreto; nunca un tipo de motor puede ser fabricado por más de una sección, ni esta puede cambiar una vez que se le ha asignado la fabricación de un determinado motor. Entre los empleados que trabajan en un tipo de motor siempre habrá un responsable, siendo ésta información de interés para la empresa. Un empleado puede estar trabajando en más de un tipo de motor. Los empleados pueden tener familiares a su cargo, cuyos datos conviene guardar en la base de datos. La empresa utiliza piezas y desea conocer las estructuras del producto. A estos efectos un motor es una pieza. 10. Se desea diseñar una base de datos que recoja la organización de una universidad. Se considera que: Los departamentos pueden estar en una sola facultad o ser interfacultativos, agrupando en este caso cátedras que pertenecen a facultades distintas. Una cátedra se encuentra en un único departamento. Una cátedra pertenece a una sola facultad. Un profesor está siempre asignado a un único departamento y adscrito a una o varias cátedras, pudiendo cambiar de cátedra pero no de departamento. Interesa la fecha en que un profesor es adscrito a una cátedra. Existen áreas de conocimiento, y todo departamento tendrá un área de conocimiento. 11. Un estudio de ingeniería desea crear una base de datos sobre los proyectos que desarrolla. En él, los ingenieros pueden trabajar en varios proyectos a la vez y en cada proyecto desempeñar una función diferente. Cada proyecto tiene un único Ingeniero Jefe. Un mismo ingeniero jefe no puede serlo de dos proyectos a la vez. En ocasiones, los proyectos pueden formar parte de otros proyectos. Estos pueden realizarse por encargo para terceras empresas o por iniciativa del propio estudio. Cuando el proyecto se realiza por encargo, la empresa que lo contrata puede proporcionar ingenieros de su plantilla para participar en el proyecto, e interesa recoger las horas dedicadas por estos en el proyecto para el que trabaja. Nunca un ingeniero externo puede realizar la función de ingeniero jefe. - Ing. Franklin Guerrero Campos -
  • 7. Guias de Laboratorios de Base de Datos -7– 12. Una biblioteca quiere informatizar parcialmente su gestión. Para ello desea crear una base de datos en la que recoger las revistas que tiene, los artículos publicados, los autores de los mismos y los temas tratados. Las revistas tratan más de un tema, e interesa recoger esta información. Un artículo puede aparecer en más de una revista. Interesa recoger la fecha de publicación de un artículo en una revista, y el número de la revista en que aparece. Los autores pueden ser colaboradores o fijos. En este último caso, interesa recoger los autores fijos de cada revista, así como el cargo que ocupan. De los autores que son sólo colaboradores interesa conocer las revistas con las que colaboran y el número de horas que dedican a cada una. Los autores pueden escribir sobre cualquier tema, por lo que no interesa recoger los temas cultivados por un autor, pero sí es necesario saber qué tema o temas ha tocado cada autor en sus artículos. 13. Un laboratorio de documentación se dedica a la traducción y maquetación de documentos técnicos para empresas. Para ello cuenta con traductores y maquetadores. Los documentos pueden ser de los siguientes tipos: programas informáticos, acompañados o no de sus correspondientes manuales, o sólo manuales u otros documentos impresos. Un traductor nunca se dedica a la maquetación y un maquetador nunca traduce. Los programas sólo se traducen, no necesitan maquetación. Los traductores pueden traducir más de un idioma e interesa conocer el nivel de conocimientos de cada idioma de cada traductor. Un traductor sólo trabaja en la traducción de un documento a la vez, aunque en la traducción de un documento pueden trabajar varios traductores al mismo tiempo. Interesa recoger el idioma en que ha trabajado cada traductor en cada documento. En la composición de un documento impreso puede trabajar más de un maquetador, que, a su vez, puede estar trabajando en la maquetación de varios documentos al mismo tiempo. Son datos de interés el número de palabras del documento y el número de páginas del documento impreso. Cada documento es propiedad de una única empresa, la cual puede encargar la traducción y/o maquetación de varios documentos. Interesa conocer la fecha en que la empresa entrega el documento para su traducción y/o maquetación. 14. Se desea crear una base de datos de investigaciones en curso. Las entidades y supuestos semánticos que definen el problema son: 1. Proyecto de investigación (nombre objetivos, áreas científicas,...). 2. Investigador (nombre, domicilio,...). 3. Entidad colaboradora (Nombre, razón social,...). Además de los supuestos semánticos del mundo real se suponen los siguientes: Un proyecto puede formar parte de otro más complejo. Un investigador puede trabajar en varios proyectos a la vez, y en cada proyecto puede tener una función diferente (investigador principal, consultor,...). Para cada proyecto debe existir un investigador principal único. Un mismo investigador no puede hacer la función de investigador principal en dos proyectos a la vez. Las entidades colaboradoras pueden ser de dos tipos: Patrocinadoras (las que financian los proyectos aportando una subvención) y de colaboración científica (aquellas a las que pertenecen los investigadores). - Ing. Franklin Guerrero Campos -
  • 8. Guias de Laboratorios de Base de Datos -8– 15. Se trata de diseñar la base de datos de una agencia aeroespacial. En ella se pretende almacenar toda la información referente a sus empleados técnicos: astronautas y científicos, además de los familiares que dependen de estos. Los empleados participan en una serie de misiones en un periodo determinado de tiempo, dato que es de interés recoger, pero como máximo, a lo largo de su estancia en la agencia pueden participar en diez misiones. Cada misión es propuesta por un científico en una fecha determinada, aunque hay alguna de estas misiones que constan de otras propuestas por otros científicos. Estas misiones están desarrolladas con vistas al estudio de uno o varios planetas. Es por ello que interesa recoger la información referente a éstos últimos, así como de los satélites que tienen o del sistema al que pertenecen. Los astros pertenecientes a estos sistemas también son de interés. La agencia dispone de una flota de naves espaciales de distintos tipos que realizan vuelos entre dos fechas en cada una de las misiones. Estas naves son manejadas en una fecha concreta por tripulantes espaciales de dos tipos distintos, astronautas o androides mecánicos. Una vez finalizada la misión se pretende almacenar sus conclusiones y la fecha de finalización. 16. Una empresa privada de transportes desea realizar un diseño de la red de autobuses de que dispone. Esta tiene las siguientes características: La red está formada por 25 líneas de autobuses, 5 de ellas nocturnas. Cada autobús está asignado a una única línea pudiendo cambiar en función de la demanda de una línea a otra. Es importante conocer el número de autobuses que tiene asignados cada línea. Para cada línea se desea conocer el número y el estado de todas sus paradas. Los conductores pueden estar asignados tanto a líneas diurnas como nocturnas, dependiendo del turno que realicen. Es importante conocer en todo momento la situación, tramo (recorrido entre dos paradas) o parada de cada autobús. Se pide: Realice un esquema Entidad Relación Extendido con las premisas anteriores. 17. Se desea crear una base de datos que recoja información de una red ferroviaria de nuestro país que tiene las siguientes características: En una estación existen una serie de objetos: circuitos de vía, agujas, señales y pasos a nivel. Cada estación debe tener como mínimo un circuito de vía y dos señales. Algunas estaciones no tienen agujas. En caso de que las tengan, estas pueden ser con motor o sin motor, siendo importante recoger cuántas agujas en total tiene cada estación. Las señales pueden ser de varios tipos: de bloqueo, de maniobra, de retroceso, teniendo en cuenta que una señal es de retroceso sólo si es también de maniobra. Las estaciones tienen o bien dos pasos a nivel o bien ninguno. Cuando un tren entra en una estación, deja de estar en el tramo del que procede. Cuando sale de la estación, pasa inmediatamente a un nuevo tramo. Es importante conocer en todo momento la situación (tramo o estación) de cada tren. Se pide: Realice un esquema Entidad Relación Extendido con las premisas anteriores. 18. Una empresa privada se dedica a la gestión de varios teatros. Entre otros temas se ocupa de recoger la siguiente información: - Ing. Franklin Guerrero Campos -
  • 9. Guias de Laboratorios de Base de Datos -9– Gestión de reservas. En cada teatro se pueden realizar reservas para los espectáculos. De cada reserva se recoge información del nombre de la persona que ha realizado la reserva, el número de entradas pedidas, y la fecha de la representación. En una misma temporada en un teatro se pueden realizar varias representaciones de diferentes tipos: ballets, conciertos u obras de teatro. También puede ocurrir que una misma representación se mantenga varias temporadas. Se recoge información sobre los artistas que trabajan en cada representación: nombre, representante, papel que interpreta en cada representación en la que actúa. Para la organización de los camerinos de cada teatro es interesante saber a qué artista se le asigna cada camerino. Cada teatro tiene un único director durante una temporada, pudiendo cambiar de director en la temporada siguiente. Se pide: Aplique el modelo Entidad Relación al enunciado anterior. 19. La liga de fútbol profesional, presidida por Carlos “Cachito” Ramírez , ha decidido informatizar sus instalaciones creando una base de datos para guardar la información de los partidos que se juegan en la liga. Se desea guardar en primer lugar los datos de los jugadores. De cada jugador se quiere guardar el nombre, fecha de nacimiento y posición en la que juega (portero, defensa, centrocampista…). Cada jugador tiene un código de jugador que lo identifica de manera única. De cada uno de los equipos de la liga es necesario registrar el nombre del equipo, nombre del estadio en el que juega, el aforo que tiene, el año de fundación del equipo y la ciudad de la que es el equipo. Cada equipo también tiene un código que lo identifica de manera única. Un jugador solo puede pertenecer a un único equipo. De cada partido que los equipos de la liga juegan hay que registrar la fecha en la que se juega el partido, los goles que ha metido el equipo de casa y los goles que ha metido el equipo de fuera. Cada partido tendrá un código numérico para identificar el partido. También se quiere llevar un recuento de los goles que hay en cada partido. Se quiere almacenar el minuto en el que se realizar el gol y la descripción del gol. Un partido tiene varios goles y un jugador puede meter varios goles en un partido. Por último se quiere almacenar, en la base de datos, los datos de los presidentes de los equipos de fútbol (dni, nombre, apellidos, fecha de nacimiento, equipo del que es presidente y año en el que fue elegido presidente). Un equipo de fútbol tan sólo puede tener un presidente, y una persona sólo puede ser presidente de un equipo de la liga. Diseñar el modelo entidad-relación resultante realizando las relaciones oportunas entre tablas - Ing. Franklin Guerrero Campos -
  • 10. Guias de Laboratorios de Base de Datos - 10 – Laboratorio Nº 03 Objetivos: 1. Diseño Lógico usando una herramienta de modelamiento de Datos 2. Planteamiento de un caso- Enunciado del Laboratorio 02 3. Elección de un DBMS destino 4. Entidades, relaciones. Parte 1 Diseño Lógico usando la herramienta case Erwin Parte 2 Utilizando el dbdesign, crear el mismo modelo y comentar las diferencias Laboratorio Nº 04 Objetivos: 1. Diseño Físico usando una herramienta de modelamiento de Datos. 2. Tipos de Datos del DBMS y generación de Esquema. 3. Exporta el modelo físico a formato html 4. Script para la generación de objeto de Base de Datos. Parte 1 • Verificar que el DBMS sea el adecuado (Estudio de Encuesta) para la generación de secuencias SQL y crear los objetos de la base datos. • Asegúrese trabajar con la vista principal. - Ing. Franklin Guerrero Campos -
  • 11. Guias de Laboratorios de Base de Datos - 11 – • Definir los tipos de datos, a partir de los subdominio. • Colocar los tipo de datos para las columnas • Exportar el modelo • Crear el archivo sql (Archivo script) Generación del Script (empresa.sql) CREATE TABLE Actividad ( IdPer char(6) NOT NULL, fin datetime NULL, Inicio datetime NULL, dedicacion char(18) NULL, IdAct int NULL, IdPry char(6) NOT NULL ) go ALTER TABLE Actividad ADD PRIMARY KEY NONCLUSTERED (IdPer, IdPry, IdAct) go CREATE TABLE Cargo ( IdCargo char(2) NULL, instrucciominima char(18) NULL, porccomision char(18) NULL, porbonificacion char(18) NULL, NombreCargo char(18) NULL ) go ALTER TABLE Cargo ADD PRIMARY KEY NONCLUSTERED (IdCargo) go CREATE TABLE Cliente ( Ruc char(11) NULL, NombreCli varchar(40) NULL, IdCli char(6) NULL ) go ALTER TABLE Cliente ADD PRIMARY KEY NONCLUSTERED (IdCli) go CREATE TABLE Departamento ( DepSuperior char(3) NULL, Responsable char(6) NULL, NombreDep varchar(20) NULL, - Ing. Franklin Guerrero Campos -
  • 12. Guias de Laboratorios de Base de Datos - 12 – IdDep char(3) NULL ) go ALTER TABLE Departamento ADD PRIMARY KEY NONCLUSTERED (IdDep) go CREATE TABLE Persona ( Comision decimal(5,2) NULL, Bonificacion decimal(5,2) NULL, Sueldo decimal(5,2) NULL, Foto image NULL, FecNacimiento datetime NULL, Sexo char(1) NULL, Instruccion int NULL, FecIngreso datetime NULL, IdDep char(3) NOT NULL, Nombre char(18) NULL, Apellido char(18) NULL, IdPer char(6) NULL, IdCargo char(2) NOT NULL ) go ALTER TABLE Persona ADD PRIMARY KEY NONCLUSTERED (IdPer) go CREATE TABLE Proyecto ( PrySuperior char(18) NULL, CanPersonas char(18) NULL, FecFin char(18) NULL, FecInicio char(18) NULL, NombreProy char(18) NULL, IdCli char(6) NOT NULL, IdPry char(6) NULL, DepResponsable char(3) NOT NULL, Jefe char(6) NOT NULL ) go ALTER TABLE Proyecto ADD PRIMARY KEY NONCLUSTERED (IdPry) go ALTER TABLE Actividad ADD FOREIGN KEY (IdPry) REFERENCES Proyecto go - Ing. Franklin Guerrero Campos -
  • 13. Guias de Laboratorios de Base de Datos - 13 – ALTER TABLE Actividad ADD FOREIGN KEY (IdPer) REFERENCES Persona go ALTER TABLE Departamento ADD FOREIGN KEY (IdDep) REFERENCES Departamento go ALTER TABLE Persona ADD FOREIGN KEY (IdCargo) REFERENCES Cargo go ALTER TABLE Persona ADD FOREIGN KEY (IdDep) REFERENCES Departamento go ALTER TABLE Proyecto ADD FOREIGN KEY (IdCli) REFERENCES Cliente go ALTER TABLE Proyecto ADD FOREIGN KEY (IdPry) REFERENCES Proyecto go ALTER TABLE Proyecto ADD FOREIGN KEY (Jefe) REFERENCES Persona go ALTER TABLE Proyecto ADD FOREIGN KEY (DepResponsable) REFERENCES Departamento go - Ing. Franklin Guerrero Campos -
  • 14. Guias de Laboratorios de Base de Datos - 14 – NORMALIZACIÓN DE DATOS Laboratorio Nº 05 Objetivos: 1. Aplicar cada una de las formas normales que exige esta técnica 2. Eliminar todo tipo de anomalías de los modelos de base de datos. Parte 1 • Analizar el caso propuesto • Desarrollar cada una de las formas normales, hasta llegar al modelo final. CASO : Normalización de Datos – Tienda de Componentes electrónicos – EL ELECTRICISTA IdPedido IdProveedor NomProv ApeProv RazonSocial DirecProv RucProv TelProv FecPed CantPed CodTipo NomTipo CodComp NomComp NumFact FecFact dCliente NomCli ApeCli RucCli DirecCli DniCli TelCli CodEmp NomEmp ApeEmp DirecEmp DniEmp TelEmp FecIngEmp FecNacEmp SalEmp CantFact TotalFac - Ing. Franklin Guerrero Campos -