Download - 100ejercicios Bd Normalizacion

Transcript
Page 1: 100ejercicios Bd Normalizacion

TEORÍA DE LA NORMALIZACIÓN

Ejercicio 1Una BD debe contener información concerniente a las ventas de los productos de una cierta compañía (Agentes, Áreas y Productos). Cada Agente es responsable de las ventas en una o más Áreas, cada Área tiene uno o más Agentes como responsables de las ventas en ella. Del mismo modo, cada Agente es responsable de la venta de uno o más Productos y cada Producto tiene uno o más Agentes responsables de su venta. Todos los Productos se venden en todas las Áreas, pero no hay dos Agentes que vendan el mismo producto en la misma Área. Cada Agente vende el mismo conjunto de Productos en todas las Áreas en las que opera, y con independencia del Área tiene establecido un precio mínimo de venta para cada producto. Se pide determinar las dependencias funcionales y representarlas mediante el correspondientediagrama.

Ejercicio 2Dada la relación R, con la extensión r(R) que se muestra en la figura,

decir si las siguientes afirmaciones relativas a la variable de relación (no al contenido en este momento) son ciertas, falsas o desconocidas:a) A → BCDb) B → Ac) C /→ A ‘ /→ significa “no determina”d) BC /→ Ae) BC → Df) D → A

Ejercicio 3La Seguridad Social desea conocer los pacientes (DNI) que han sido atendidos en sus hospitales (COD_H) y el doctor (COD_D) que los atiende. Se supone que un doctor sólo puede atender en un hospital y que, aunque un paciente puede ser atendido en varios hospitales, en cada uno de ellos sólo le atiende un doctor.Determinar las dependencias funcionales de este supuesto.

Page 2: 100ejercicios Bd Normalizacion

Ejercicio 4Simplifique el conjunto de DF mostrado en el diagrama eliminando las dependencias transitivas.

Ejercicio 5Demostrar si se puede conseguir el diagrama de la derecha a partir del de la izquierda,empleando únicamente las reglas de inferencia.

Ejercicio 6Supongamos que al diseñar una BD se obtienen las cuatro relaciones siguientes:R1(nombre_emp, direcc_emp, edad, sexo, nombre_superv)R2(nombre_superv, departamento)R3(nombre_empl, departamento)R4(departamento, num_tel_depart, direcc-depart)Una de las relaciones es redundante. Identificarla y explicar las razones de dicha redundancia.Ejercicio 7Cada despacho de una oficina es identificado por un #despacho y tiene precisamente un teléfono. Cada teléfono tiene su propio #extensión. Hay dos tipos de teléfonos, sólo para llamadas internas (tipo I), y para llamadas externas/internas (tipo E). Los costes de alquiler de extensión dependen únicamente del tipo, teléfonos de tipo I son cargados con la tarifa T1, y los del tipo E con la tarifa T2. La información sobre despachos y teléfonos será almacenada en la relación:Oficina(#despacho, número_ocupantes, #extensión, tipo_teléfono, tarifa)Haciendo cualquier asunción plausible necesaria se pide:a) Identificar las dependencias funcionales.b) Ídem, pero con la adición de los atributos #empleado y nombre_emp. Los valores de #empleado identifican empleados individuales. Cada empleado tiene un único nombre y ocupa sólo un despacho.c) Ídem, pero permitiendo varios teléfonos por despacho. Todos los empleados de un despacho comparten todos los teléfo nos de dicho despacho.

Page 3: 100ejercicios Bd Normalizacion

Ejercicio 8Se tiene la relación R siguiente que contiene información sobre los empleados de una empresaR(NEmp, DNI, Edad, Dir, CDep, NDep, DJef, CPro, NPro, Año, Imp)donde cada atributo es:NEmp: nombre de un empleado.DNI: DNI del empleado.Edad: edad del empleado.Dir: dirección del empleado.CDep: código de departamento al que pertenece el empleado.NDep: nombre del departamento.DJef: DNI del empleado que es jefe del departamento.CPro: Código de un proyecto en el que participa el empleado.NPro: nombre del proyecto.Año: año de realización del proyecto.Imp: importe del proyecto.Se cumplen las siguientes restricciones:1) Un empleado sólo tiene un nombre (aunque puede haber 2 empleados con igual nombre),una edad y una dirección.2) Un empleado sólo pertenece a un departamento, aunque cada departamento puede tener varios empleados.3) No hay 2 departamentos con igual código. Tampoco puede haber 2 departamentos con igual nombre.4) Un departamento tiene un único Jefe, que es uno de los empleados. Un empleado sólo puede ser Jefe de un departamento.5) Un empleado puede participar en varios proyectos; los cuales pueden tener a su vez a varios empleados.6) Cada proyecto se identifica por su código y sólo tiene un nombre, un año de realización y un importe.7) Dos proyectos pueden tener el mismo nombre si son en años diferentes.Se pide:a) Indicar el conjunto de DF que se cumplen, señalando el número de la restricción o restricciones de donde se deduce cada una. De la misma manera, indicar las DF que es seguro que no se cumplen en ningún caso. Dibujar el diagrama de dependencias.b) Indicar las DF no completas y transitivas, y los descriptores equivalentes.c) La restricción 5ª (un empleado puede participar en varios proyectos y en cada proyecto pueden participar varios empleados) no puede ser modelada adecuadamente usando DF.Explicar porqué.

Page 4: 100ejercicios Bd Normalizacion

Ejercicio 9¿Cuáles son las claves de la relación R{(X, Y, Z, W, U), DF}?, siendo DF el conjunto dedependencias funcionales de la figura.

Ejercicio 10Dado el siguiente esquema de relaciónR{(O, R, U, V, W, X, Y, Z); DF} conDF={XY → Z, Z → U, XYZ → V, R → X, X → R, W → O, O → W}UCLM-ESI (F.Ruiz) BDa-7ep: Teoría de la Normalización. 5Determinar las claves de R.

Ejercicio 11Dado el esquema de relación R{(A, E, F, G, H, I), DF} conDF = { H→ A, I→ AF, G→ EJ, F→ I}Verificar si GHI es superclave y/o clave candidata.

Ejercicio 12Calcular las claves candidatas para el esquema de relación del ejercicio 8.

Ejercicio 13Para los resultados del ejercicio A.1:a) Diseñar un conjunto de relaciones en 3FN para este problema (partir de la relación universal, en la cual se encuentran todos los atributos y todas las dependencias funcionales, analizar su nivel de normalización y aplicar el método de descomposición).b) ¿Se han conservado la información y las dependencias funcionales en la descomposición?.Ejercicio 14Para la relación R del ejercicio B.1, comprobar si está en 3FN.

Ejercicio 15Para la relación del ejercicio A.3, determinar la forma normal en que se encuentra y analizar si un diseño alternativo podría ser más adecuado.

Ejercicio 16¿En qué forma normal se encuentra la relación R del ejercicio B.2?.Descomponer R en un conjunto de relaciones en FNBC (indique las claves primarias de las relaciones resultantes).

Page 5: 100ejercicios Bd Normalizacion

Ejercicio 17Dada la siguiente relación:R (dni, calle, municipio, provincia, cod_p) para la que se cumplen las siguientes dependencias funcionales:dni → calle, municipio, provincia, cod_pcod_p → municipio, provinciacalle, municipio, provincia → cod_pa) Determinar el grado de normalización.b) Obtener por descomposición un conjunto de relaciones en FNBC.c) ¿Se han producido pérdidas de información y/o pérdidas de DF's?.

Ejercicio 18Dada la relación R de los ejercicios A.8 y B.4:a) Poner R en forma normal de Boyce/Codd (FNBC) mediante la técnica de descomposición.b) Dibujar el diagrama de integridades referenciales resultantes de la anterior descomposición.

Para cada uno de los siguientes esquemas conceptuales, se pide obtener el esquema lógico estándar en forma de grafo relacional

DISEÑOS CONCEPTUAL, LÓGICO Y FÍSICO

En este tema las clases de ejercicios que proponemos son las siguientes:a) Transformar un esquema entidad-interrelación a su equivalente relacional.

NOTA: No se incluyen ejercicios sobre el Diseño Lógico Específico y sobre el Diseño Físico porque ambos están completamente determinados por el SGBD concreto que se utilizará en cada proyecto. Por esta razón, los ejercicios de este tipo se realizan en el laboratorio de la asignatura con ORACLE 8.

Ejercicios Para cada uno de los siguientes esquemas conceptuales, se pide obtener el esquema lógico estándar en forma de grafo relacional

Page 6: 100ejercicios Bd Normalizacion

Ejercicio 19El esquema de la figura se refiere a una BD para la gestión de proyectos de investigación.

Ejercicio 20Obtener el esquema relacional equivalente para el siguiente diagrama E/R:

Page 7: 100ejercicios Bd Normalizacion

Ejercicio 21La figura siguiente muestra el esquema conceptual de una base de datos para gestionar el catastro de viviendas de un municipio.

NOTAS:- Para mayor claridad, en el diagrama se han incluido los roles que juegan las entidades en todas las interrelaciones, por ejemplo, en la interrelación Z-V, se indica que las viviendas ‘están-en’ zonas urbanas y que en las zonas urbanas ‘existen’ viviendas.- Los atributos no clave de cada entidad, no incluidos en el diagrama, son:Zona: tasa-edificabilidad, precio-medio-sueloVivienda: codigo-postal, metrosUnifamiliar: metros-uni, calefacciónBloque: metros-bloPiso: metros-pis, calefacciónPersona: nombre-per, apellidos-per, sexo

Page 8: 100ejercicios Bd Normalizacion

Ejercicio 22El esquema E/R siguiente se ha diseñado para construir una base de datos que permita almacenar la información de los resultados de las elecciones municipales.

Page 9: 100ejercicios Bd Normalizacion

Ejercicio 23El siguiente diagrama E/R modela la base de datos de una oficina de patentes, que contiene toda la información relativa a la presentación de patentes, inventores que las presentan y las empresas que desean comprarlas.

Page 10: 100ejercicios Bd Normalizacion

Ejercicio 24La base de datos para gestionar prestamos de una biblioteca universitaria tiene el siguiente esquema conceptual:

Page 11: 100ejercicios Bd Normalizacion

Ejercicio 25Base de Datos para una cadena de videoclubes.

Page 12: 100ejercicios Bd Normalizacion

Ejercicio 26Esquema conceptual de la base de datos de una farmacia.

Page 13: 100ejercicios Bd Normalizacion

LENGUAJES RELACIONALES

Ejercicio 27 Calcular para las relaciones siguientes

Ejercicio 28Dadas dos relaciones A y B con claves primarias KA y KB. Asumiendo que A y B tienen esquemascompatibles según se necesite, indicar la clave primaria para cada una de las relaciones resultantessiguientes:a) σp(A), siendo p un predicado cualquiera.b) ΠL(A), siendo L una lista de atributos de A cualesquiera.c) A × Bd) A B∪e) A ∩ Bf) A - Bg) A * Bh) A : B

Ejercicio 29Dada A una relación de grado n. ¿ Cuántas proyecciones diferentes existen ?.

Ejercicio 30En la aritmética ordinaria hay dos números especiales, el 0 y el 1, con las siguientes propiedades:

n * 0 = 0 * n = 0n * 1 = 1 * n = n

para cualquier n. En el AR hay dos relaciones que son análogas al 0 y al 1 aritméticos respecto del producto cartesiano. ¿ Cuáles son ?. ¿ Cuáles serán sus claves primarias ?.

Ejercicio 31

En la aritmética ordinaria la multiplicación y la división son operaciones inversas:( a * b) / b = a( a / b ) * b = a¿ Son sus equivalentes relacionales, el producto cartesiano ( × ) y la división ( : ) también operadores inversos ?. Explicarlo.

Ejercicio 32

Page 14: 100ejercicios Bd Normalizacion

Dada f(x,y) una fórmula bien formada con variables libres x e y. ¿ Cuáles de las siguientes equivalencias son ciertas?. Justificarlo.a) x yf(x,y) ≡ y xf(x,y)∃ ∃ ∃ ∃b) xf(x,y) ≡ ¬ x(¬f(x,y))∀ ∃c) x yf(x,y) ≡ y xf(x,y)∃ ∀ ∀ ∃d) x yf(x,y) ≡ y xf(x,y)∀ ∀ ∀ ∀

Ejercicio 33Dado el esquema relacional siguiente:vive(nombre, calle, ciudad)trabaja(persona, compañía, salario)situada_en(compañía, ciudad)supervisa(persona, nombre-supervisor)con las integridades referenciales siguientes:trabaja.persona → vive trabaja.compañía → situada_ensupervisa. persona → trabaja supervisa. supervisor → trabajaConstruir las siguientes consultas en AR, CRT y CRD:a) Encontrar el nombre de todas las personas que trabajan para la compañía ‘Fiduciaria’. b) Localizar el nombre y la ciudad de todas las personas que trabajan para la compañía ‘Fiduciaria’.c) Buscar el nombre, calle y ciudad de todas las personas que trabajan para la compañía ‘Fiduciaria’ y que ganan más de 50000 euros.d) Encontrar todas las personas que viven en la misma ciudad en la que se halla la compañía para la que trabajan.e) Localizar todas las personas que viven en la misma ciudad y en la misma calle que su supervisor.f) Buscar todas las personas que no trabajan para la compañía ‘Fiduciaria’.g) Encontrar todas las personas que ganan más que cualquier empleado de la compañía ‘FL.h) Localizar las ciudades en las que todos los trabajadores que viven en ellas ganan más de 50000 euros.

Ejercicio 34Dada la siguiente base de datos de suministradores (S) de piezas (P) para proyectos (J) de unaempresa:S( sn, snombre, provincia, ciudad )P( pn, pnombre, color, peso, ciudad )J( jn, jnombre, ciudad )SPJ( sn, pn, jn, cantidad )con las siguientes integridades referenciales:SPJ.sn → S SPJ.pn → P SPJ.jn → JConstruir las expresiones del AR, CRT y CRD para formular las siguientes consultas:a) Conseguir toda la información disponible de los proyectos.b) Conseguir toda la información disponible de los proyectos desarrollados en ‘Londres’.c) Indicar los números de suministradores (sn) que proveen para el proyecto 1.UCLM-ESI (F.Ruiz) BDa-T4ep: Lenguajes Relacionales. 4d) Obtener una lista de todas las combinaciones (color,ciudad) de las piezas, eliminando lospares duplicados.e) Listar todos los tripletes número-suministrador (sn), número-pieza (pn) y número-proyecto(jn), tales que los indicados suministrador, pieza y proyecto tienen el mismo valor delatributo ciudad.f) Listar todos los tripletes número-suministrador (sn), número-pieza (pn) y número-proyecto(jn), tales que los indicados suministrador, pieza y proyecto tienen distinto valor delatributo ciudad.g) Indicar los número de piezas provistas por suministradores de ‘Londres’.h) Indicar los número de piezas provistas por suministradores de ‘Londres’ para un proyectodesarrollado en ‘Londres’.i) Listar los números de aquellas piezas provistas para cualquier proyecto por un

Page 15: 100ejercicios Bd Normalizacion

suministrador de la misma ciudad que el proyecto.j) Conseguir todos los pares de números de piezas (pn1, pn2), tales que al menos unsuministrador provee las dos.k) Indicar los nombres de proyectos provistos por el suministrador 3.l) Conseguir los colores de las piezas suplidas por el suministrador 3.m) Indicar los números de las piezas suplidas en algún proyecto de ‘Londres’.n) Indicar los números de los proyectos en los que se emplea al menos una pieza provista porel suministrador 3.o) Indicar los números de proyectos no suplidos con alguna pieza de color ‘rojo’ por algúnsuministrador de ‘Londres’.p) Indicar los números de los proyectos suplidos únicamente por el suministrador 3.q) Indicar los números de las piezas suministradas en todos los proyectos desarrollados en‘Londres’.r) Indicar los números de los suministradores que proveen la misma pieza para todos losproyectos.s) Construir una lista de todas las ciudades en las cuales hay localizado algún suministrador,pieza o proyecto.

Ejercicio 35Dada una base de datos consistente en las siguientes relaciones:frecuenta(bebedor, bar)sirve(bar, cerveza)le-gusta(bebedor, cerveza)donde la primera relación indica los bares que visita cada bebedor, la segunda dice que cervezasirve cada bar, y la última indica las cervezas que le gusta beber a cada bebedor.Expresar en AR, CRT y CRD las siguientes consultas:a) Listar los bares que sirven cervezas que le gustan a ‘Carlos’.b) Listar los bebedores que frecuentan al menos uno de los bares que sirven alguna cerveza delas que les gustan.UCLM-ESI (F.Ruiz) BDa-T4ep: Lenguajes Relacionales. 5c) Listar los bebedores que frecuentan sólo bares que sirven alguna cerveza de las que lesgustan.d) Listar los bebedores que no visitan ninguno de los bares que sirven alguna de las cervezasque les gustan.Ejercicio 35Sean R(A,B,C) y S(A,B,C) los esquemas de dos relaciones. Escribir en CRT y CRD las expresionesequivalentes a las siguientes consultas de AR:a) ΠA(R)b) σB=17(R)c) R S∪d) R ∩ Se) R - Sf) ΠA,B(R) _ ΠB,C(S)g) R × S

Ejercicio 36Convertir la siguiente consulta del CRD en sus equivalentes en AR y CRT:{ a,b R(a,b) R(b,a) }∧

Ejercicio 37Dadas las relaciones R(A,B) y S(A,B), realizar en SQL y QBE las consultas equivalentes a:a) la unión de R y S.b) la intersección de R y S.c) la diferencia de R y S.

Page 16: 100ejercicios Bd Normalizacion

MODELO RELACIONAL

Ejercicio 38Dada la siguiente tabla

a) ¿ Porqué no representa una relación?b) Transformarla en otra equivalente que modele la misma información y que sí represente unarelación.

Ejercicio 39Dada la tabla

Documentos(código, tipo, idioma, copias, editorial)donde si tipo = "artículo", el atributo editorial carece de sentido. Calcular el resultado deevaluar la siguiente consulta según las tablas de verdad de la lógica trivaluada y cuatrivaluadade Codd:

(idioma = "ESPAÑOL" OR copias = 4) AND editorial = "RAMA"en caso de tratarse:a) de un artículo escrito en italiano cuyo número de copias no conocemosb) de un libro -cuyo idioma no sabemos- de la editorial Addison-Wesley y del quedesconocemos el número de copias.

Estos ejercicios sirven para practicar la representación de los diferentes conceptos y objetosmediante esquemas relacionales.

Ejercicio 40Dado el esquema relacional siguiente:Cliente(dni, nombre-cli, direccion-cli, tarifa)Automóvil(matricula, marca, modelo, pagado, dni, #clase)Categoría(#clase, tasa)Taller(cif, nombre-tal, direccion-tal)Accidente(#accidente, dni, matricula, cif, fecha, coste)Sabiendo que se han llamado igual, en todas las tablas, los atributos que representan el mismoobjeto o propiedad, se pide:a) Indicar las integridades referenciales existentes y dibujarlas en un diagrama referencial.b) Para cada una, decidir y justificar los modos de borrado y modificación más convenientes.

Ejercicio 41Las siguientes relaciones representan una BD con información de empleados y programadores:empleado(#emp, nombre, ..., trabajo, ...)programador(#emp, ..., lenguaje, ...)Sabiendo que cada programador es un empleado, pero lo contrario no tiene porqué cumplirse:a) Dibujar un diagrama mostrando las restricciones referenciales en esta base de datos.

Page 17: 100ejercicios Bd Normalizacion

b) Indicar las claves primarias y ajenas de cada relación, señalando en su caso, si las claves ajenasdeben admitir valores nulos, e indicando los modos de borrado y modificación.

Ejercicio 42Dado el esquema relacional de BD siguiente:Departamentos(código, nombre)Areas(código, nombre, código-dep)Profesores(código, nombre, categoría, código-are)Locales(código, nombre, capacidad, situación)UCLM-ESI (F.Ruiz) BDa-T3ep: Modelo Relacional. 3Asignaturas(siglas, nombre, créditos, anualidad, curso, caracter, horas-teoría, ...... horas-prácticas, alumnos)Grupos(siglas-asi, clase (*), código, nombre, alumnos)Docencia(código-pro, código-loc, siglas-asi, clase-gru, código-gru, día, hora)(*) indica si son de teoría o de prácticas.que contiene información sobre un centro universitario: departamentos (dep), áreas deconocimiento (are), profesores (pro), locales (loc) donde se imparte clase o se realiza algún otroproceso, asignaturas (asi), grupos de clase de las asignaturas (gru), y horas de docencia.Se pide:a) Elegir las claves candidatas y claves primarias de cada tabla.b) Identificar las claves ajenas / integridades referenciales.c) Expresar en lenguaje natural la semántica que se incorpora con cada una de lasintegridades referenciales anteriores.

Ejercicio 43Para realizar el diseño de la Base de Datos del censo de población se dispone de la siguienteespecificación de requerimientos:- Se almacenarán datos de personas y datos de lugares.- Cada persona tiene un nombre, apellidos, fecha_de_nacimiento, lugar_de_nacimiento,edad, estatura, sexo y nivel_de_estudios. Para los hombres también interesa conocer susituación_militar. Para las personas mayores de 16 años también se debe considerar elDNI.- Cada lugar corresponde a un municipio, teniendo como datos propios el nombre y elcódigo (número secuencial del municipio según orden alfabético en cada provincia). Porejemplo, Ciudad Real capital es el municipio “13034”, ya que el código de la provincia esel “13”.- Todas las personas están censadas (población de derecho) en un municipio en unadirección (calle y número). Interesa conocer la fecha en que se registró dicha situación.- Además, cada persona es residente (población de hecho) en un municipio en unadirección ó en un país extranjero. En ambos casos queremos conocer también la fecha deinicio.- Una persona puede ser residente en el mismo municipio en el que está censada o en otrodiferente (o en otro país).- De cada municipio y de cada provincia interesa conocer su población de derecho(censada) y de hecho (residente realmente).Se pide:a) Obtener el diagrama relacional correspondiente.b) Proponer una forma lo más sencilla posible de transformar el anterior diagrama para que ladirección (calle y nº) donde está censada una persona, nos permita conocer el distrito al quepertenece dentro del municipio. El distrito es una subdivisión del municipio compuesta por unconjunto de manzanas (una manzana no puede dividirse para pertenecer a dos distritos). Unamanzana es un conjunto de casas físicamente unidas, separadas de las demás por calles. Cadalado de la manzana incluye una serie de números consecutivos (pares o impares) de una calle.NOTA: Comparar resultados con los obtenidos para el modelo E/R (ejercicio A.1 del Tema 2).

Page 18: 100ejercicios Bd Normalizacion

Ejercicio 44Se conocen las siguientes reglas de negocio de un banco:a) El banco tiene cuentas corrientes, cuentas de ahorro y clientes. Un cliente tiene al menosuna cuenta, aunque puede tener varias cuentas de cualquiera de los dos tipos. Cada cuentapertenece a un único cliente.b) Los clientes tiene un nombre, una dirección y se identifican por su código. Los clientesdel banco son personas reales u organizaciones. Las personas tienen fecha de nacimientoy sexo; en cambio las organizaciones tienen un tipo de organización (empresa, instituciónpública, etc.), un representante y un nº de empleados.c) Cada cuenta se identifica por un código-cuenta-cliente (CCC), formado por elidentificador del banco, de la sucursal y el nº de la cuenta (dentro de dicha sucursal).d) Todas las cuentas tienen un saldo actual y un saldo medio, pero el tipo de amortizaciónsólo lo tienen las cuentas de ahorro (que sólo suponen el 5% del total de cuentasexistentes).e) Cada sucursal se identifica por su número. Además tiene una dirección, un código postaly una ciudad.f) Los empleados del banco se identifican por su DNI. También interesa conocer su nombre,fecha-nacimiento, sexo y la sucursal en la que trabajan (aunque hay empleados que notrabajan en ninguna sucursal).Se pide:1. Representar mediante subesquemas relacionales cada regla por separado.2. Integrar los subesquemas obtenidos en el apartado anterior en un único esquema relacional,eliminando las redundancias encontradas.3. Entre las preguntas siguientes, señale cuáles no se podrían responder con el esquemaobtenido en el apartado anterior, explique por qué no y proponga el cambio necesario en elesquema para poder responderlas:- ¿Cuál es el saldo medio de las empresas con más de 500 trabajadores?- ¿Cuántos directores de sucursal tienen cuenta de ahorro?- ¿Cuántos titulares de cuentas corrientes son empleados del banco?- ¿Cuál es la antigüedad media de las cuentas con saldo mayor de 100000 pesetas?NOTA: Comparar resultados con los obtenidos para el modelo E/R (ejercicio A.4 del Tema 2).

Ejercicio 45Diseñar el diagrama relacional de una base de datos con información de personas y sus relacionesfamiliares (padre_de, hermano_de, abuelo_de, hijo_de, primo_de, nieto_de, casado_con, ...). Tenerespecial cuidado con las interrelaciones redundantes.NOTA: Comparar resultados con los obtenidos para el modelo E/R (ejercicio A.8 del Tema 2).

Ejercicio 46Se quiere diseñar una Base de Datos para gestionar las existencias de CD’s (discos compactos)de una tienda de música. El análisis de requerimientos realizado nos ha permitido saber losiguiente:a) Existen dos tipos de obras: los CD’s individuales y las colecciones. Las obras se identificanpor su clave (parecida al ISBN de los libros) que es general para todo el mundo. Tambiéntienen un nombre.b) Cada CD se puede identificar también por un número asignado por la propia tienda (#cd).Tiene un precio venta al público (PVP).c) Cada CD incluye varias pistas, que están numeradas (1,2,3, …). De cada pista nos interesael título de la canción que contiene y su duración. Dos o mas canciones de distintos CD’spueden tener el mismo título.d) A cada colección pertenecen varios CD’s. Una colección tiene un promotor y un PVP (quese cobra al adquirirla entera), que suele ser mas bajo que la suma de los PVP’s de los CD’sque la forman.e) Cada CD ha sido realizado por uno o varios artistas. Los artistas se identifican por sunombre. También interesa conocer de ellos el país y el estilo musical (rock, country,

Page 19: 100ejercicios Bd Normalizacion

flamenco, música española, etc).f) Los artistas pueden ser personas individuales o grupos. Para los grupos interesa conocertambién el número de componentes y sus nombres.g) Se quiere tener otro fichero con datos de las compañías discográficas: su nombre (que lasidentifica), su dirección en España (calle, número y código postal-cp-) y el país dondetienen la sede central.h) Cada compañía ha editado una o varias obras. Cada obra sólo la puede editar la compañíapropietaria de sus derechos, pero estos derechos pueden cambiar a otra compañía con eltiempo (por compra, cesión, etc). De cada obra puede haber varias ediciones realizadas porla misma compañía (o por varias distintas si los derechos han cambiado). Por tanto, de cadaedición de cada obra interesa conocer la compañía que la ha realizado, así como su fecha.i) Por último, se quiere saber para cada obra cual es la compañía propietaria actualmente delos derechos (se necesita para saber a quién pedir mas ejemplares de la obra en caso denecesidad).Se pide:- Explicar como afecta cada apartado del enunciado al diseño relacional.- Dibujar el diagrama relacional global correspondiente.NOTA: Comparar resultados con los obtenidos para el modelo E/R (ejercicio A.14 del Tema 2).

Con estos ejercicios se pretende ejercitar la comprensión e interpretación de esquemasrelacionales.

Ejercicio 47Se dispone de una BD relacional con información de empleados, proyectos y departamentos deuna compañía. Su esquema es el siguiente:Tablas:Empleados ( nss, nombre-emp, fecha-nacimiento, dirección-emp, sexo, salario, superior, departamento )Departamentos ( #dep, nombre-dep, jefe, fecha-inicio-jefe )Locales ( # local, nombre-loc, edificio )Edificios ( nombre-edi, dirección-edi )Departamentos-Locales ( #dep, #local )Proyectos ( #proyecto, nombre-pro, local, departamento )Trabajar_en (empleado, proyecto, horas )Familiares ( empleado, nombre-fam, sexo, fecha-nacimiento-fam, parentesco )Integridades referenciales:Empleados.superior -> EmpleadosEmpleados.departamento -> DepartamentosDepartamentos.jefe -> EmpleadosLocales.edificio -> EdificiosDepartamentos-Locales.#dep -> DepartamentosDepartamentos-Locales.#local -> LocalesProyectos.local -> LocalesProyectos.departamento -> DepartamentosTrabajar_en.empleado -> EmpleadosTrabajar_en.proyecto -> ProyectosFamiliares.empleado -> EmpleadosSe pide:a) Dibujar el diagrama referencial.b) Indicar las redundancias existentes.c) Responder cierto, falso o no se puede saber, a las siguientes afirmaciones, y justificarlo:c.1) Un proyecto se puede realizar en varios locales.c.2) Un proyecto lo pueden realizar empleados de varios departamentos.c.3) Todo empleado tiene un superior.d) Explicar cómo se podrían obtener los siguientes datos (indicar las tablas e integridadesreferenciales necesarias):

Page 20: 100ejercicios Bd Normalizacion

d.1) nss y nombre de todos los empleados que trabajan en más de un proyecto.d.2) #dep y nombre de todos los departamentos que tienen algún empleado que participa enalgún proyecto realizado en el edificio “Central”.

Ejercicio 48Se dispone de una Base de Datos relacional que se utiliza para llevar el control de los librospedidos y recibidos en una biblioteca. Las tablas existentes son:Titulos ( isbn, titulo, tipo, #editorial, fecha-publicacion, idioma )Editoriales ( #editorial, edi-nombre, edi-tlf, edi-direccion )Proveedores ( #proveedor, pro-nombre, pro-tlf, pro-direccion )Ejemplares ( signatura, isbn, precio-coste )Autores( autor, pais )Tit-Aut ( isbn, autor, categoria )Pedidos-Cab ( #pedido, fecha-pedido, #proveedor, %descuento, IVA, importe-total )Pedidos-Lin ( #pedido, isbn, cantidad, precio-unidad )UCLM-ESI (F.Ruiz) BDa-T3ep: Modelo Relacional. 7Las integridades referenciales que se deben respetar son:Titulos.#editorial -> EditorialesEjemplares.isbn -> TitulosTit-Aut.isbn -> TitulosTit-Aut.autor -> AutoresPedidos-Cab.#proveedor -> ProveedoresPedidos-Lin.#pedido -> Pedidos.CabPedidos-Lin.isbn -> TitulosAclaraciones:− Proveedores son las empresas que nos venden libros, no confundir con las que los publican(Editoriales).− Ejemplares son los volúmenes físicos que existen (no confundir con Títulos). De un mismotítulo pueden existir varios ejemplares, colocados en distintas estanterías (signatura),adquiridos en pedidos diferentes y con precios distintos.− Tit-Aut indica el autor o autores de cada libro, y viceversa, los libros escritos por cada autor.− Cada pedido consta de una cabecera (Pedidos-Cab) con datos generales y una o varioslíneas de pedido (Pedidos-Lin) con los datos de cada título pedido.Se pide:a) Dibujar el diagrama referencial.b) Indicar y explicar los modos de borrado y modificación más adecuados en cada integridadreferencial.

Ejercicio 49Se dispone de una BD relacional con información sobre las dinastías que han reinado en un país. Elesquema relacional es el siguiente:Soberano(persona, dinastía, desde_el_año, hasta_el_año)Persona(nombre, sexo, año_nacimiento, año_muerte)Paternidad(padre, hijo)Maternidad(madre, hijo)con las siguientes integridades referenciales:Soberano.persona -> Persona Paternidad.padre -> PersonaPaternidad.hijo -> Persona Maternidad.padre -> PersonaMaternidad.hijo -> PersonaResponder si, con lo indicado en el esquema, las siguientes afirmaciones son ciertas o falsas yexplicarlo:a) En la BD puede haber Personas que no son Soberanos.b) Un hijo puede tener dos padres o dos madres.c) En la BD puede haber personas que no sean ni Soberanos, ni Padres, ni Madres.Ejercicio 50

Page 21: 100ejercicios Bd Normalizacion

Dado el siguiente esquema de base de datos relacional para gestionar los préstamos de unabiblioteca:Libro (signatura, autor, titulo, editor, clase)Usuario (carnet, nombre, direccion)Clase (clave, tiempo_de_prestamo)Prestamo (signatura, carnet, fecha_inicio, fecha_fin)Con las siguientes claves ajenas:Libro.clase → ClasePrestamo.signatura → LibroPrestamo.carnet → UsuarioExpresar en lenguaje natural las reglas semánticas que se han modelado.

Ejercicio 51La base de datos de una empresa contiene las siguientes tablas:Persona (dni, nombre, direccion, telefono)Empleado (dni, fecha-alta, fecha-consolidación, salario, departamento, jefe)Departamento (#dep, nombre, presupuesto)Indicar cómo modelaría las siguientes restricciones semánticas:a) No puede haber dos personas con igual DNI.b) Todo empleado es una persona.c) No puede haber dos empleados con igual #dep o igual nombre.d) Toda persona tiene dirección.e) La fecha de alta de un empleado tiene que ser anterior a la fecha de consolidación.f) El salario de cada empleado no puede ser superior al 10% del presupuesto de sudepartamento.g) Un empleado solo puede pertenecer a un departamento a la vez.h) Una persona puede tener varios teléfonos o ninguno.

MODELO ENTIDAD/INTERRELACIÓN

Para cada uno de los siguientes enunciados, se pide obtener el esquema conceptual de la base dedatos correspondiente utilizando diagramas del modelo E/R extendido.

Ejercicio 51Para realizar el diseño de la Base de Datos del censo de población se dispone de la siguienteespecificación de requerimientos:- Se almacenarán datos de personas y datos de lugares.- Cada persona tiene un nombre, apellidos, fecha_de_nacimiento, lugar_de_nacimiento,edad, estatura, sexo y nivel_de_estudios. Para los hombres también interesa conocer susituación_militar. Para las personas mayores de 16 años también se debe considerar elDNI.- Cada lugar corresponde a un municipio, teniendo como datos propios el nombre y elcódigo (número secuencial del municipio según orden alfabético en cada provincia). Porejemplo, Ciudad Real capital es el municipio “13034”, ya que el código de la provincia esel “13”.- Todas las personas están censadas (población de derecho) en un municipio en unadirección (calle y número). Interesa conocer la fecha en que se registró dicha situación.- Además, cada persona es residente (población de hecho) en un municipio en unadirección ó en un país extranjero. En ambos casos queremos conocer también la fecha deinicio.- Una persona puede ser residente en el mismo municipio en el que está censada o en otrodiferente (o en otro país).- De cada municipio y de cada provincia interesa conocer su población de derecho(censada) y de hecho (residente realmente).Se pide:a) Obtener el diagrama E/R correspondiente.

Page 22: 100ejercicios Bd Normalizacion

b) Proponer una forma lo más sencilla posible de transformar el anterior diagrama para que ladirección (calle y nº) donde está censada una persona, nos permita conocer el distrito al quepertenece dentro del municipio. El distrito es una subdivisión del municipio compuesta por unconjunto de manzanas (una manzana no puede dividirse para pertenecer a dos distritos). Unamanzana es un conjunto de casas físicamente unidas, separadas de las demás por calles. Cadalado de la manzana incluye una serie de números consecutivos (pares o impares) de una calle.

Ejercicio 53Diseñar un esquema E/R que recoja la organización de una base de datos para contener lainformación sobre todas las carreteras de un país, sabiendo que se deben cumplir las siguientesespecificaciones:− Las carreteras se encuentran divididas en varias categorías (locales, comarcales, regionales,nacionales, autovías, etc).− Las carreteras se dividen en tramos. Un tramo siempre pertenece a una única carretera y nopuede cambiar de carretera.− Un tramo puede pasar por varios municipios, interesando conocer el km de la carretera y elmunicipio donde empieza el tramo y en donde termina.− Para los tramos que suponen principio o final de carretera, interesa saber si es que lacarretera concluye físicamente o es que confluye en otra carretera. En este caso, interesaconocer con qué carretera confluye y en qué kilómetro, tramo y municipio.

Ejercicio 54Realizar el diseño de una base de datos para una agencia de viajes que, para ofrecer mejor servicioa sus clientes, considera de interés tener registrada la información referente a los diferentes toursque puede ofrecer. Tener en cuenta lo siguiente:− Un tour, según su finalidad, cultural, histórica, deportiva, ..., tiene unos determinadospuntos 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, etc.,y se consideran de visita solamente o de visita y estancia. En este último caso el punto deruta tiene asignado un hotel o a varios.− Entendemos por cliente de un viaje la persona que ha decidido hacerlo y ha hecho efectivauna señal.− Un cliente puede confirmar su participación en más de un viaje (se sobreentiende que lasfechas son diferentes).− Las personas que participan en un viaje pueden ser alojadas en los mismos o endiferentes hoteles.

Ejercicio 55Se conocen las siguientes reglas de negocio de un banco:a) El banco tiene cuentas corrientes, cuentas de ahorro y clientes. Un cliente tiene al menosuna cuenta, aunque puede tener varias cuentas de cualquiera de los dos tipos. Cada cuentapertenece a un único cliente.b) Los clientes tiene un nombre, una dirección y se identifican por su código. Los clientesdel banco son personas reales u organizaciones. Las personas tienen fecha de nacimientoy sexo; en cambio las organizaciones tienen un tipo de organización (empresa, instituciónpública, etc.), un representante y un nº de empleados.c) Cada cuenta se identifica por un código-cuenta-cliente (CCC), formado por elidentificador del banco, de la sucursal y el nº de la cuenta (dentro de dicha sucursal).d) Todas las cuentas tienen un saldo actual y un saldo medio, pero el tipo de amortizaciónsólo lo tienen las cuentas de ahorro (que sólo suponen el 5% del total de cuentasexistentes).e) Cada sucursal se identifica por su número. Además tiene una dirección, un código postaly una ciudad.f) Los empleados del banco se identifican por su DNI. También interesa conocer su nombre,

Page 23: 100ejercicios Bd Normalizacion

fecha-nacimiento, sexo y la sucursal en la que trabajan (aunque hay empleados que notrabajan en ninguna sucursal).Se pide:1. Representar mediante diagramas E/R cada regla por separado.2. Integrar las vistas conceptuales obtenidas en el apartado anterior en un único esquemaconceptual, eliminando las redundancias encontradas.3. Entre las preguntas siguientes, señale cuáles no se podrían responder con el esquemaobtenido en el apartado anterior, explique por qué no y proponga el cambio necesario en elesquema para poder responderlas:- ¿Cuál es el saldo medio de las empresas con más de 500 trabajadores?- ¿Cuántos directores de sucursal tienen cuenta de ahorro?- ¿Cuántos titulares de cuentas corrientes son empleados del banco?- ¿Cuál es la antigüedad media de las cuentas con saldo mayor de 100000 pesetas?NOTA: No realizar ninguna suposición innecesaria. Si considera que para realizar el ejercicio esnecesario realizar alguna, indique de manera expresa la regla de negocio correspondiente.

Ejercicio 56Se desea diseñar según el modelo E/R una base de datos sobre la información de las reservas deuna empresa de 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 coches.− Es necesario contemplar las fechas de comienzo y de terminación de la reserva.− Todo coche tiene siempre asignado un determinado garaje que no puede cambiar.− Cada reserva se realiza en una determinada agencia.− Pueden existir en la base de datos clientes que no hayan hecho ninguna reserva.− Todas las entidades tienen una clave alfanumérica que las identifica unívocamente.Realizar el diseño en el modelo E/R indicando los supuestos que no han podido recogerse, asícomo los que ha sido necesario introducir.

Ejercicio 57Las siguientes reglas de negocio indican cómo funciona una empresa que gestiona las líneas demetro de una ciudad:a) Una línea está compuesta por una serie de estaciones en un orden determinado, siendomuy importante recoger la información de este orden. Cada estación pertenece al menosa una línea, pudiendo pertenecer a varias.b) Una estación nunca puede dejar de pertenecer a una línea a la que anteriormentepertenecía.c) Cada estación puede tener varios accesos, pero cada acceso sólo puede pertenecer a unaestación. Un acceso nunca podrá cambiar de estación.d) Cada línea tiene asignados una serie de trenes, no pudiendo suceder que un tren estéasignado a más de una línea. Los trenes sólo pueden dejar de estar asignados a líneascuando están en reparación.e) Cada línea tiene asignados como mínimo tantos trenes como estaciones tenga y comomáximo el doble de dicho mínimo.f) Algunas estaciones tienen cocheras y cada tren tiene reservada una cochera. Un trenpuede cambiar de cochera reservada, pero no quedar sin ella. Cada cochera puede estarreservada para uno o varios trenes.g) Hay dos tipos de estaciones: normales y mixtas. Las estaciones normales sólo tienenservicio de metro, mientras que las mixtas tienen conexión con otros servicios (renfe,cercanías, estación de autobuses, aeropuerto, etc.). Sólo interesa saber qué conexionesexisten desde cada estación.NOTAS: En el caso de no poder representar alguna regla de negocio, explicar las causas. Notener en cuenta los atributos, salvo los identificadores principales y los estrictamentenecesarios a partir de las reglas enunciadas. No realizar ninguna suposición innecesaria; siconsidera que para realizar el ejercicio es necesario realizar alguna, indíquela de maneraexpresa.

Page 24: 100ejercicios Bd Normalizacion

Se pide:1. Representar mediante subesquemas E/R cada una de las reglas de negocio.2. Integrar los subesquemas obtenidos en el apartado anterior en un único esquema globalconceptual. Indicar las redundancias encontradas.3. Modificar el esquema global obtenido en b) para contemplar las siguientes nuevas reglas denegocio:- Las estaciones pueden ser simples ó múltiples. Las simples pertenecen a una única línea.Las estaciones múltiples pertenecen a más de una línea y tiene un RCT (responsable decoordinación de transbordos).- En las estaciones múltiples pueden existir pasarelas para ir desde una de las líneas a otrasin salir de la propia estación. Las pasarelas unen dos líneas de metro mediante pasos alaire libre o subterráneo.4. Indicar cómo podrían responderse las preguntas siguientes con el esquema obtenidoanteriormente:- ¿Cuántos accesos tiene una línea de metro?- ¿En cuántas cocheras podría ser guardado un tren (cocheras que podría reservar)?- ¿Cuántos trenes hay averiados en cada estación?

Ejercicio 58Realizar el esquema E/R para una base de datos que contendrá información relativa a algunosaspectos del campeonato mundial de fútbol. Considerar 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 un determinado partido sólopuede jugar en un puesto.− En cada partido intervienen 3 colegiados: un juez de línea derecho, un juez de líneaizquierdo y un árbitro.− Un colegiado puede realizar una función en un partido y otra distinta en otro partido.− Cada partido enfrenta a dos equipos.− Es obligatorio en todo momento que un jugador pertenezca a un equipo determinado yno podrá cambiar de equipo.

Ejercicio 59Diseñar el diagrama E/R de una base de datos con información de personas y sus relacionesfamiliares (padre_de, hermano_de, abuelo_de, hijo_de, primo_de, nieto_de, casado_con, ...). Tenerespecial cuidado con las interrelaciones redundantes.

Ejercicio 60Constrúyase un diagrama E/R para una compañía de seguros automovilísticos sabiendo que:- Se dispone de un fichero de clientes con el dni, nombre y dirección; y de un fichero deautomóviles con la matrícula, marca y modelo.- Un cliente puede asegurar varios automóviles. Cuando un automóvil deja de estarasegurado, solo se conservan los datos del cliente.- A cada cliente se le aplica una tarifa distinta según el método bonus-malus, es decir, pagamás quien mas accidentes haya tenido. Para ello se dispone de un historial con la fecha ycostes de los accidentes que ha tenido cada cliente con cada automóvil.- El importe del seguro depende también de la categoría del automóvil. A cada categoría deautomóviles le corresponde una tasa (porcentaje) distinto.- Cada automóvil siniestrado en un accidente se repara en un determinado taller, para lo cualexiste un fichero de talleres con su nombre y dirección. Pueden existir accidentes en loscuales no se repare el vehículo, por ejemplo, en caso de siniestro total.- Se emite un recibo anual por cada automóvil asegurado de cada cliente, llevándose uncontrol de cuales están pagados.Indicar los supuestos semánticos que ha sido necesario introducir.

Page 25: 100ejercicios Bd Normalizacion

Ejercicio 61Se pretende mecanizar la gestión de una biblioteca. Para ello se recoge la siguiente información:- Se dispone de un fichero de usuarios con el número de carnet, nombre y dirección; y deun fichero de libros con la signatura, autor, titulo y editor.- Se realizan prestamos de libros a los usuarios. Cada usuario puede tener prestados a la vezvarios libros.- Cada libro pertenece a una determinada clase, identificada por una clave. De la clase dellibro depende el tiempo máximo que se puede prestar.- Se quiere llevar un control histórico de todos los préstamos que se van realizando,sabiendo además del libro y el usuario, las fechas de inicio y de devolución del préstamo.- Para cada libro se debe llevar un control de su estado, para saber si está disponible cuandoun usuario lo pide prestado.- A los usuarios se les puede penalizar cuando cometan diversos retrasos en la devolución,impidiéndoles realizar nuevos préstamos.Obtener el esquema conceptual aplicando el modelo E/R.

Ejercicio 62Obtener el diagrama E/R para un sistema de control de vuelos adaptado a las siguientes reglas degestión (indicar las entidades, interrelaciones, etc., que se deducen de cada una de las reglas):a) De cada aeropuerto se conoce su código, nombre, ciudad y país.b) En cada aeropuerto pueden tomar tierra diversos modelos de aviones (el modelo de unavión determina su capacidad, es decir, el número de plazas.c) En cada aeropuerto existe una colección de programas de vuelo. En cada programa devuelo se indica el número de vuelo, línea aérea y días de la semana en que existe dichovuelo.d) Cada programa de vuelo despega de un aeropuerto y aterriza en otro.e) Los números de vuelo son únicos para todo el mundo.f) En cada aeropuerto hay múltiples aterrizajes y despegues. Todos los aeropuertoscontemplados están en activo, es decir, tienen algún aterrizaje y algún despegue.g) Cada vuelo realizado pertenece a un cierto programa de vuelo. Para cada vuelo se quiereconocer su fecha, plazas vacías y el modelo de avión utilizado.h) Algunos programas de vuelo incorporan escalas técnicas intermedias entre los aeropuertosde salida y de llegada. Se entiende por escala técnica a un aterrizaje y despegueconsecutivos sin altas ó bajas de pasajeros.i) De cada vuelo se quieren conocer las escalas técnicas ordenadas asignándole a cada una unnúmero de orden.Por ejemplo, el programa de vuelo 555 de Iberia con vuelos los lunes y jueves despega de Barajas-Madrid-España y aterriza en Caudell-Sydney-Australia teniendo las siguientes escalas técnicas: 1-Los Pradiños-Sao Paulo-Brasil, 2-El Emperador-Santiago-Chile y 3-Saint Kitts-Auckland-NuevaZelanda.¿Que cambios se producirán en el caso anterior si en las escalas pudiesen bajar o subir pasajeros?.Explicar cómo se podría representar esta nueva situación.

Ejercicio 63Diseñar el esquema conceptual de una base de datos para una liga de balonmano a partir de lasiguiente información:- Existen cuatro tipos de personas: seguidor, técnicos, jugadores y directivos. Cadapersona tiene un nombre y una edad.- Los equipos se identifican por un nombre, al igual que los estadios. Estos últimostambién tienen una capacidad y una localización.- A cada partido jugado se le asigna un número secuencial, además de la fecha, hora yresultado.- Cada seguidor apoya a un único equipo y puede asistir a varios partidos (al menos a unoen la temporada), en los que no tiene porqué jugar su equipo.- Cada técnico trabaja para un único equipo, aunque cada equipo podrá tener varios

Page 26: 100ejercicios Bd Normalizacion

técnicos. Lo mismo ocurre con los jugadores que juegan en los equipos, y con losdirectivos que los dirigen.- En cada partido juegan entre sí dos equipos (uno hace el papel de local y el otro devisitante). Cada equipo se enfrentará en diversos partidos con otros equipos.- En cada estadio tienen lugar diversos partidos.- Cada equipo entrena en uno o varios estadios en determinadas fechas. En un estadiopueden entrenar varios equipos (al menos lo hará el equipo local), pero puede haberestadios donde no se realice ningún partido porque esté clausurado por sanción.- Cada equipo puede tener un máximo de 16 jugadores, si bien en cada partido no puedenjugar más de 12.

Ejercicio 64Se quiere diseñar una base de datos para almacenar la información de un diccionarioenciclopédico, en adelante enciclopedia. Las especificaciones a seguir son las siguientes:- a) En la enciclopedia aparecen una serie de términos ordenados alfabéticamente:.... ACERISTA, ACERNADAR, ACERO, ....- b) Cada término se identifica por su clave y tiene como propiedades la página y laetimología. Ejemplo:Clave: ACEROpágina: 86etimología: del latín tardío aciarium, de acies, filo.- c) Cada término tiene una o varias acepciones (significados) identificadas por un númerosecuencial (referido al conjunto de acepciones del término). Por ejemplo, el términoACERO tiene las acepciones:nº_acepcion: 1epígrafe:significado: Aleación de hierro y carbono, en diferentes proporciones, ....nº_acepcion: 2epígrafe:significado: fig., Arma blanca, y en especial la espada.nº_acepcion: 3epígrafe: Farm. (farmacología)significado: Se daba este nombre a diversos preparados de hierro, especialmente a lasaguas ferruginosas ....- d) El epígrafe de una acepción se refiere a la materia de que trata (historia, zoología, etc). Siesta vacío indica que es una definición de tipo diccionario.- e) Cada término puede tener asociados varios complementos. Un complemento es unainformación adicional a las acepciones del término, que puede ser de diversos tipos: mapas,figuras, tablas, etc. Cada complemento se identifica por su número (general para toda laenciclopedia) y está asociado a un único término. Por ejemplo, ACERO tiene loscomplementos:nº_complemento: 356titulo: Esquema de los diferentes procesos de obtención.tipo: figuraarchivo: acero1.gifnº_complemento: 358titulo: Producción mundial de acero (media 1987-1989)tipo: tablaarchivo: acero2.xls- f) Cada acepción de un término contiene una o varias subdivisiones con el contenido textualenciclopédico del término. Las subdivisiones son multinivel, con un máximo de 6 niveles.En cada nivel puede haber como máximo 9 subdivisiones. Por ejemplo, la acepción 1 deACERO tiene las siguientes subdivisiones:Nivel: 100000titulo: Historiacontenido: Durante la Edad Media y el Renacimiento el acero era producido ....

Page 27: 100ejercicios Bd Normalizacion

Nivel: 200000titulo: Siderurgiacontenido: El acero es básicamente una aleación de hierro con un contenido de .....Nivel: 210000titulo: Procesos fundamentales de obtención del acero.contenido: Aunque con distintas técnicas, los procesos de obtención pueden .....Nivel: 211000titulo: Procesos por soplado: Bessemer ácido y Thomas básico.Contenido: El proceso Bessemer se emplea para minerales de hierro con bajo ........Nivel: 220000titulo: EstructuraContenido: La composición interna del acero viene determinada por el proceso de ....- g) Existen dos clases de términos: simples (por ejemplo, ACERO) y compuestos (porejemplo, ACERO DULCE). Un término simple puede participar en la composición devarios términos compuestos (acero dulce, acero especial, acero fundido). El identificador deun término compuesto está formado por la clave del término simple más la extensión. Porejemplo:clave del término simple: ACEROextensión: DULCEEn lo demás, un término compuesto es igual que un término simple, salvo que no sepueden formar términos compuestos por otros términos compuestos previos (sóloexisten dos niveles).- h) Cada acepción se elabora por personal de la empresa. Además, en algunos casos, puedenparticipar varios colaboradores (expertos externos a la empresa), identificables por unaclave. Ejemplo:clave del colaborador: AMMnombre: Ana Muñoz Martíntitulación: Dª en Historiaprofesión: Profesora de la Univ. de Barcelona- i) En cada acepción pueden aparecer varias referencias, es decir, identificadores de otrostérminos (simples o compuestos) donde se puede encontrar información mas precisa. Porejemplo, en el término ACERO, acepción 4ª, aparece la referencia "ver PULMÓN DEACERO". Un término puede ser referenciado por cualquier número de acepciones.Se pide:- Explicar cómo se representan en el modelo E/R las especificaciones de cada uno de losnueve apartados anteriores (por separado).- Dibujar el diagrama E/R global (sin atributos, salvo los identificadores).

Ejercicio 65Se quiere diseñar una Base de Datos para gestionar las existencias de CD’s (discos compactos)de una tienda de música. El análisis de requerimientos realizado nos ha permitido saber losiguiente:a) Existen dos tipos de obras: los CD’s individuales y las colecciones. Las obras se identificanpor su clave (parecida al ISBN de los libros) que es general para todo el mundo. Tambiéntienen un nombre.b) Cada CD se puede identificar también por un número asignado por la propia tienda (#cd).Tiene un precio venta al público (PVP).c) Cada CD incluye varias pistas, que están numeradas (1,2,3, …). De cada pista nos interesael título de la canción que contiene y su duración. Dos o mas canciones de distintos CD’spueden tener el mismo título.d) A cada colección pertenecen varios CD’s. Una colección tiene un promotor y un PVP (quese cobra al adquirirla entera), que suele ser mas bajo que la suma de los PVP’s de los CD’sque la forman.e) Cada CD ha sido realizado por uno o varios artistas. Los artistas se identifican por sunombre. También interesa conocer de ellos el país y el estilo musical (rock, country,

Page 28: 100ejercicios Bd Normalizacion

flamenco, música española, etc).f) Los artistas pueden ser personas individuales o grupos. Para los grupos interesa conocertambién el número de componentes y sus nombres.g) Se quiere tener otro fichero con datos de las compañías discográficas: su nombre (que lasidentifica), su dirección en España (calle, número y código postal-cp-) y el país dondetienen la sede central.h) Cada compañía ha editado una o varias obras. Cada obra sólo la puede editar la compañíapropietaria de sus derechos, pero estos derechos pueden cambiar a otra compañía con eltiempo (por compra, cesión, etc). De cada obra puede haber varias ediciones realizadas porla misma compañía (o por varias distintas si los derechos han cambiado). Por tanto, de cadaedición de cada obra interesa conocer la compañía que la ha realizado, así como su fecha.i) Por último, se quiere saber para cada obra cual es la compañía propietaria actualmente delos derechos (se necesita para saber a quién pedir mas ejemplares de la obra en caso denecesidad).Se pide:- Explicar como afecta cada apartado del enunciado al diseño E/R.- Dibujar el diagrama E/R global correspondiente.- Explicar el método (fórmula o algoritmo) para actualizar el valor de los atributos derivados.

Ejercicio 66Se quiere diseñar una Base de Datos para gestionar una empresa comercial conociendo lasiguiente información:- Las ventas se realizan mediante una red de vendedores. Cada uno se identifica por sunúmero. Además interesa conocer su nombre y dirección.- Los vendedores gestionan pedidos. Cada pedido se identifica por su número de pedido(número secuencial anotado por el vendedor) y lo gestiona un vendedor para el clienteque lo hace. Cada pedido tiene fecha, importe total de todos los productos pedidos, %de IVA aplicado, importe del IVA, importe del descuento y forma de pago (por talón opor transferencia).UCLM-ESI (F.Ruiz) BDa-2ep: Modelo Entidad/Interrelación. 10- Los pedidos que se pagan por talón tienen el número del talón y su fecha; en cambio,los que se pagan por transferencia tienen el CCC (código cuenta cliente) de la cuentadesde la que se hace la transferencia, y su fecha.- En cada pedido se pueden incluir uno o varios productos. Para cada uno de ellos, setiene la cantidad solicitada, el precio por unidad y el importe.- Los productos de identifican por un código. Además tienen una descripción y un preciode venta al publico (PVP) recomendado.- Los clientes se identifican por su código. Sus datos son el nombre, el NIF, el % dedescuento que se le aplica y, opcionalmente, uno o varios teléfonos. Un cliente seincorpora a la base de datos la primera vez que hace un pedido.- Cada cliente pertenece a una zona comercial. Las zonas comerciales tienen un códigopara identificarlas, un nombre y una dirección del almacén.- Un vendedor tiene asignadas una o varias zonas. En cada zona puede haber variosvendedores. Cada vendedor atiende a los clientes que pertenecen a la zona o zonas quetiene asignadas.Se pide:a) Diseñar el esquema E/R.b) Modificar el esquema anterior para contemplar lo siguiente:- Conocer de cada producto la cantidad en stock (almacén), así como los proveedores que noslo han suministrado anteriormente, y los que nos lo pueden suministrar. Para los primeros,interesa saber la fecha y precio de compra del último suministro de cada producto.- Que en un mismo pedido se puedan incluir varias Líneas de Pedido referidas a un mismoproducto (por ejemplo, porque sean con diferente precio - aunque no obligatoriamente tieneque ser esa la razón-).

Page 29: 100ejercicios Bd Normalizacion

Ejercicio 67Se desea construir un sistema de información para la gestión de los residuos sólidos y peligrososproducidos en una ciudad. La información a contemplar es la que corresponde desde que elresiduo es producido hasta que llega a un lugar seguro y recibe un tratamiento especial. Estoincluye información de los residuos, sus productores, las empresas que los transportan a loslugares seguros y los traslados de los residuos. Las reglas de gestión a tener en cuenta son lassiguientes:a) Un productor (empresa u organización) produce un número variable de residuosconstituidos, a su vez, por un número variable de constituyentes químicos.b) Más de un productor puede producir residuos con iguales constituyentes químicos y con lasmismas o distintas cantidades de dichos constituyentes.c) Los productores asignan un código único a los residuos que producen, lo que les permitediferenciar distintas producciones de los mismos productos. Además, más de un productorpuede asignar el mismo código a los residuos que produce.d) Los residuos pueden ser trasladados en su totalidad (cantidad total del mismo) o en partes, ono ser trasladados nunca.e) En cada traslado de residuos la cantidad que se traslada de los mismos es enviada a un únicodestino.f) En cada traslado puede intervenir más de una empresa transportista usando el mismo odistinto transporte, por lo que resulta interesante conocer tanto el medio de transporteutilizado como los kilómetros realizados, así como el coste del trabajo.g) El residuo se traslada en un tipo de envase determinado por el productor y que no varía a lolargo de su traslado.UCLM-ESI (F.Ruiz) BDa-2ep: Modelo Entidad/Interrelación. 11h) Interesa conocer la fecha de llegada a destino y el tratamiento posterior a que se someten losresiduos.i) Por seguridad, se considera que en un traslado sólo puede trasladarse un residuo de unproductor.Obtener el diagrama E/R para el sistema anterior representando por separado cada una de lasreglas de gestión e integrándolas después en un único diagrama.

En estos ejercicios se comprueba la capacidad de interpretar los diagramas E/R para extraer susemántica. Igualmente se trata de detectar errores, inconsistencias o redundancias en losdiagramas E/R.

Page 30: 100ejercicios Bd Normalizacion

Ejercicio 68Describir el esquema E/R de la figura, referido a una base de datos para la gestión de proyectosde investigación. Explicar la semántica de cada una de las entidades (con sus atributos eidentificadores) y de todas las interrelaciones.

Ejercicio 69Se ha diseñado el esquema conceptual de una base de datos universitaria según el diagrama E/Rde la figura. Responder SI o NO a las siguientes afirmaciones y justificarlas:a) No existen departamentos sin profesores.b) Todas las clases de una asignatura son en el mismo local.c) De una asignatura pueden dar clase profesores de varios departamentos diferentes.

Page 31: 100ejercicios Bd Normalizacion

Ejercicio 70El diagrama E/R de la figura representa una base de datos para gestionar proyectos de unaempresa.

Indicar si las afirmaciones siguientes son ciertas o falsas y justificarlos:- Los departamentos siempre tienen Director (un empleado que los dirige).- Una misma clase de pieza puede ser suministrada por mas de un proveedor.- Todos los empleados tienen un jefe.- Un proyecto es realizado por varios departamentos.- No sabemos los empleados que son investigadores (trabajan en un proyecto deinvestigación).

Ejercicio 71Se quiere construir una base de datos para gestionar el catastro de viviendas de un municipio. Eldiagrama E/R es el siguiente:

Page 32: 100ejercicios Bd Normalizacion

NOTAS:- Para mayor claridad, en el diagrama se han incluido los roles que juegan las entidades entodas las interrelaciones, por ejemplo, en la interrelación Z-V, se indica que las viviendas‘están-en’ zonas urbanas y que en las zonas urbanas ‘existen’ viviendas.- Los atributos no clave de cada entidad, no incluidos en el diagrama, son:Zona: tasa-edificabilidad, precio-medio-sueloVivienda: codigo-postal, metrosUnifamiliar: metros-uni, calefacciónBloque: metros-bloPiso: metros-pis, calefacciónPersona: nombre-per, apellidos-per, sexoSe pide:a) Explicar la semántica del diagrama E/R.b) Señalar si las siguientes afirmaciones son ciertas o falsas y justificarlo.- Un bloque de viviendas puede estar deshabitado (tener 0 habitantes).- Una persona puede vivir (habitar) en dos unifamiliares o en dos pisos, pero no en ununifamiliar y un piso.- El propietario de una vivienda siempre es el cabeza de familia.Ejercicios Se trata de modificar esquemas E/R para añadir nuevas funcionalidades, cambiarfuncionalidades existentes, o para corregir errores.

Ejercicio 72Cambiar el esquema del ejercicio 68 para:− Añadir una especialización de Empleado en Investigadores y No_Investigadoresrespetando el resto de consideraciones indicadas en el diagrama.− Incluir materias de investigación actuales y pasadas de aquellos empleados que soninvestigadores.− Sustituir el atributo multivaluado Autores del tipo de entidad Artículo por unainterrelación con el nuevo subtipo Investigador.

Ejercicio 73Considerar el esquema de la figura, que representa los productos de una compañía y las piezas con las cuales los fabrican.

Modificar el esquema para representar lo siguiente:- Para cada pieza, las subpiezas componentes.- Para cada pieza, el color y el peso.- Considerar que las piezas están identificadas por el #pieza dentro de los productos; es

Page 33: 100ejercicios Bd Normalizacion

decir, la misma pieza puede tener un #pieza diferente en diferentes productos.

Ejercicio 74Modificar el diagrama del ejercicio B.3 para incorporar las siguientes reglas de negocio:- Un empleado trabaja en un proyecto desde una fecha de inicio hasta una fecha de fin.- Los proyectos de investigación también tienen ingresos previstos.- Las publicaciones las realizan uno o varios empleados. Una publicación es resultado deun único proyecto de investigación. Una publicación tiene un número de publicación,título y fecha.

Ejercicio 75¿Qué cambios se deberían realizar en el esquema del ejercicio B.4 para poder saber el númerode niños en edad escolar (menores de 17 años) que residen en cada zona urbana?.

SQL

Ejercicio 76Se tiene una base de datos de películas reflejada por las siguientes tablasPelícula (#título, #año, duración, nombre_estudio)Estrella (#nombre, dirección, sexo, fecha_nacimiento)Estudio (#nombre, dirección)Protagoniza (#t´ıtulo_pel´ıdula, #año_película, #nombre_estrella)Se pide realizar las siguientes consultas en SQL (Se supone que todos los datos necesariosse encuentran almacenados en las tablas):1. Encontrar la direccíon de los estudios MGM.2. Encontrar todas las estrellas que participaron en pelıculas realizadas en 1980 o enalguna película que contenga la palabra “Amor”en el t´ıtulo.3. ¿ Quien fue las estrella masculina de “El nombre de la rosa”?4. ¿ Que pelıculas tienen mayor duracion que “Lo que el viento se llevo”?5. Encontrar el t´ıtulo y la duracion de todas las pel´ıculas producidas por los estudiosDisney en el año 1990, ordenando la salida por su duracion.6. Encontrar todas las estrellas que son hombres o viven en Malibu (tienen Malibucomo parte de su direccion).7. ¿Qu´e estrellas distintas aparecen en las pelıculas producidas por la MGM en 1995?(Si una aparece varias veces mostrarla solo una vez).8. Encontrar la suma de la duracion de todas las pelıculas de cada estudio.Ejercicio 77Dada una base de datos de ordenadores e impresoras con las siguientes tablasProducto (#fabricante, #modelo, tipo)PC (#modelo, velocidad, ram, hd, cd, precio)Impresora (#modelo, color, tipo, precio)Realizar en SQL las siguientes consultas:1. Encontrar el modelo, velocidad y tamaño de disco duro (hd) de todos los PC’scuyo precio sea inferior a $1600.2. Repetir la consulta de (a), pero cambiando el nombre a las columnas velocidadcomo Megaherzios y hd como Gigabytes.3. Encontrar todas las filas de la tablas de Impresoras que son en color. El valor dela columna color es booleano con los valores ’V’y ’F’.4. Encontrar la velocidad media de los PC’s.5. Decir los fabricantes y la velocidad de los PC’s con disco duro de tamaño mayor oigual a 1 Gigabyte.6. Encontrar los fabricantes de los PC’s con velocidad superior a 160 MHz.

Page 34: 100ejercicios Bd Normalizacion

Ejercicio 78Dadas las siguientes tablas, dar una expresion SQL para cada una de las siguientesconsultas:Vive (#nombre, calle, ciudad)Trabaja (#nombre, #compañıa, salario)Situada (#compañia, ciudad)Dirige (#nombre, #nombre_director)1. Encontrar el nombre y la ciudad de todos los empleados que trabajan en El CorteIngles.2. Encontrar todos los empleados que viven en la misma ciudad que la compañia enla que trabajan.3. Encontrar el salario y la compañıa de todos los directores.4. Encontrar a todos los empleados que viven en la misma ciudad y en la misma calleque su director.

Ejercicio 79Dadas las siguientes tablas relacionales:Cigarrillo (#marca, #filtro, nombre_fabricante, precio)Estanco (#CIF, nombre, direccion)Fabricante (#nombre, pais)Compras (#CIF, #marca, #filtro, año, cantidad, precio)Ventas (#CIF, #marca, #filtro, año, cantidad, precio)Plantear las siguientes preguntas utilizando SQL:1. Obtener todas las marcas de cigarrillos extranjeros.2. Obtener el total de compras de cigarrillos con filtro (filtro = ’S’) realizadas pormarca.3. Obtener una relacion completa de todas las compras y ventas realizadas.4. Obtener la relacion de estancos que no han vendido cigarrillos ’Ducados’con filtro.Ejercicio 80

Dadas las siguientes tablas relacionales:

Persona (#DNI, nombre, apellidos, DNI_cabeza, calle, numero, escalera, planta, puerta)Piso (#calle, #numero, #escalera, #planta, #puerta, metros, codigo_postal)Zona (#codigo_postal, nombre)Persona (#DNI, #calle, #numero, #escalera, #planta, #puerta, fecha_compra)Plantear las siguientes preguntas utilizando SQL:1. Obtener el DNI de todos los propietarios de una casa en la zona Centro.2. Obtener el DNI, nombre y apellidos de los propietarios de un piso en la calleDamaso, numero 20.3. Obtener todos los pisos de mas de 50m2 cuyo propietario tiene el DNI numero44.351.312.4. Obtener el numero de personas que viven en el numero 14 de Felipe II.5. Obtener el tamaño medio de las casas de la zona de Latina.

Page 35: 100ejercicios Bd Normalizacion

Resuelve las siguientes preguntas en SQL:

Ejercicio 81

Obtener Todos los Alumnos

Ejercicio 82Obtener los tipos de contenidos de las cajas

Ejercicio 83

Obtener el valor medio de todas las cajas

Ejercicio 84

Obtenet el numero de cajas que hay en cada almacen

Ejercicio 85

Insertar un nuevo almacen en barcelona con capacidad para 3 cajas

Ejercicio 86

Rebajar el valor de las cajas un 15%

Ejercicio 87

Eliminar las cajas con valor menor a $100

Ejercicio 88

Vaciar el contenido de los almacenes que esten saturados

Ejercicio 89

Obtener los numeros de referencia de las cajas que estan el Bilbao

Ejercicio 90

Obtener los tipos de contenidos de las cajas

Page 36: 100ejercicios Bd Normalizacion

Ejercicio 91. Diseñar un esquema E/R que recoja la organizacion de un sistema de informacion en el que se quiere tener la informacion sobre municipios, viviendas y personas. Cada persona solo puede habitar en una vivienda, pero puede ser propietaria de mas de una. Tambien nos interesa la interrelacion de las personas con su cabeza de familia. (Hacer los supuestos semanticos complementarios necesarios).

Ejercicio92. Disenar una base de datos que contenga informacion relativa a todas lascarreteras de un determinado paıs. Se pide realizar el diseño en el modelo E/R,sabiendo que:1. En dicho paıs las carreteras se encuentran divididas en tramos.2. Un tramo siempre pertenece a una unica carretera y no puede cambiar de carretera.3. Un tramo puede pasar por varios terminos municipales, siendo un dato de interesel km. del tramo por el que entra en dicho termino municipal y el km. por el que sale.4. Existen una serie de areas en las que se agrupan los tramos, cada uno de loscuales no puede pertenecer a mas de un area.

Ejercicio 93.Diseñar una base de datos que recoja la organizacion de una Universidad. Seconsidera que:1. Los departamentos pueden estar en una sola facultad o ser interfacultativos, agrupando en este caso catedras que pertenecen a facultades distintas.2. Una catedra se encuentra en un unico departamento.3. Una catedra pertenece a una sola facultad.4. Un profesor esta siempre asignado a un unico departamento y adscrito a una o varias catedras, pudiendo cambiar de catedra, pero no de departamento. Interesa la fecha en que un profesor es adscrito a una catedra.5. Existen areas de conocimiento, y todo departamento tendra una unica area de conocimiento.

Ejercicio 94.Se desea diseñar una base de datos para una Universidad que contenga informacion sobre los Alumnos, las Asignaturas y los Profesores. Construir un modelo E/R teniendo en cuenta las siguientes restricciones:1. Una asignatura puede estar impartida por muchos profesores (no a la vez) ya que pueden existir grupos.2. Un profesor puede dar clases de muchas asignaturas.3. Un alumno puede estar matriculado en muchas asignaturas.4. Se necesita tener constancia de las asignaturas en las que esta matriculado un alumno, la nota obtenida y el profesor que le ha calificado.5. Tambien es necesario tener constancia de las asignaturas que imparten todos los profesores (independientemente de si tienen algun alumno matriculado en su grupo).6. No existen asignaturas con el mismo nombre.7. Un alumno no puede estar matriculado en la misma asignatura con dos profesores distintos.

Ejercicio 95.Se desea diseñar una base de datos para una sucursal bancaria que contenga informacion sobre los clientes, las cuentas, las sucursales y las transacciones producidas. Construir el modelo E/R teniendo en cuenta las siguientes restricciones:1. Una transaccion viene determinada por su numero de transaccion, la fecha y la cantidad.2. Un cliente puede tener muchas cuentes.3. Una cuenta puede tener muchos clientes.4. Una cuenta solo puede estar en una sucursal.

Ejercicio 96. Construir el modelo E/R que refleje toda la informacion necesaria para la gestion de las lıneas de metro de una determinada ciudad. los supuestos semanticos

Page 37: 100ejercicios Bd Normalizacion

considerados son los siguientes:1. Una lınea esta compuesta por una serie de estaciones en un orden determinado, siendo muy importante recoger la informacion de ese orden.2. Cada estacion pertenece al menos a una lınea, pudiendo pertenecer a varias.3. Una estacion nunca deja de pertenecer a una lınea a la que anteriormente pertenecıa (p. ej., Portazgo, que pertenece a la lınea 1, nunca podra dejar de pertenecer a esta lınea).4. Cada estacion puede tener varios accesos, pero consideramos que un acceso solo puede pertenecer a una estacion.5. Un acceso nunca podra cambiar de estacion.6. Cada lınea tiene asignados una serie de trenes, no pudiendo suceder que un tren este asignado a mas de una lınea, pero sı que no este asignado a ninguna (p. ej., si se encuentra en reparacion).7. Algunas estaciones tienen asignadas cocheras, y cada tren tiene asignada una cochera.8. Interesa conocer todos los accesos de cada lınea.

Ejercicio 97. Construir el modelo E/R y a partir de el el modelo relacional que refleje toda la informacion necesaria para almacenar la informacion relativa a algunos aspectos del campeonato mundial de futbol considerando los supuestos semanticos siguientes:1. Un jugador pertenece a un unico equipo y no hay dos jugadores con el mismo nombre.2. Un jugador puede actuar en varios puestos distintos, pero en un determinado partido solo puede jugar en un puesto.3. En cada partido intervienen varios colegiados.4. Un colegiado puede realizar una funcion en un partido y otra distinta en otro partido.5. Es obligatorio en todo momento que un jugador pertenezca a un equipo determinadoy no podra cambiar de equipo a lo largo del mundial.

Ejercicio 98. Se desea diseñar una base de datos que guarde la informacion de las reservas de una empresa dedicada al alquiler de automoviles. Los supuestos semanticos son los siguientes:1. Un determinado cliente puede tener en un momento dado varias reservas.2. Una reserva la realiza un unico cliente, pero puede involucrar a varios coches.3. Es importante registrar la fecha de comienzo de la reserva y la de terminacion.4. Todo coche tiene siempre asignado un numero determinado de garaje, que no puede cambiar.5. Cada reserva se realiza en una determinada agencia.6. En la base de datos pueden existir clientes que no hayan hecho ninguna reserva.7. Todas las entidades tienen una clave alfanumerica que las identifica unıvocamente. Se pide realizar el diseño del modelo E/R e indicar aquellos supuestos que no han podido recogerse, ası como los que ha sido necesario introducir.Ejercicio 99. Se desea diseñar una base de datos que recoja informacion sobre la Vuelta Ciclista a España. Los supuestos semanticos que se utilizaran son los siguientes (entreparentesis aparecen los nombre de algunos campos que se desean tener en la bases de datos)1. Cada edicion de la Vuelta viene identificada por un codigo (CE), ademas, interesa conservar el año (A) en que ha tenido lugar dicha edicion.2. Todas las ediciones tienen las mismas etapas (E), aunque puede variar su longitud. Se quiere guardar la longitud de cada etapa (KM) de una edicion.3. Cada equipo (EQ) tiene un nombre (N EQ), tambien queremos guardar su fecha de fundacion (FEQ).4. Todos los equipos tienen un unico patrocinador (PA), el patrocinador puede variar de un año a otro, pero no dentro del mismo año.5. Queremos tener los equipos que han participado en cada edicion con el puesto (PE) conseguido por cada uno de ellos (dos equipos no pueden conseguir el mismo puesto en una misma edicion).6. Los corredores (C), interesa guardar tambien su nombre (N C) y fecha de nacimiento (F C), pueden cambiar de equipo de un a˜no a otro, pero nunca dentro del mismo.7. En cada etapa de una edicion un corredor consigue un unico puesto (P) y un puesto lo consigue un unico corredor. 8. Nos interesa guardar los tiempos (T) conseguidos por cada corredor en cada

Page 38: 100ejercicios Bd Normalizacion

etapa de una edicion. En cada etapa de una edicion, un puesto implica un tiempo determinado.Se pide realizar el modelo entidad/relacion de la base de datos, utilizando los atributos que se dan en el enunciado.Ejercicio 100. La base de datos COMPAÑIA se ocupa de los empleados, departamentos y proyectos de una empresa, de acuerdo con los siguientes requisitos:1. La compañıa esta organizada en departamentos. Cada departamento tiene un nombre unico, un numero unico y un empleado que la dirige y estamos interesados en guardar la fecha en que dicho empleado comenzo a dirigir el departamento.Un departamento puede estar distribuido en vario lugares.2. Cada departamento controla un cierto numero de proyectos, cada uno de los cuales tiene un nombre y un numero unicos, y se realiza en un solo lugar.3. Se almacena el nombre, numero de la Seguridad Social, direccion, salario, sexo y fecha de nacimiento de cada empleado. Todo empleado esta asignado a un departamento, pero puede trabajar en varios proyectos que no tienen porque ser del mismo departamento. Nos interesa saber el numero de horas que un empleado trabaja en cada proyecto a los que esta asignado.4. Tambien se quiere guardar la relacion de las cargas familiares de cada empleado para administrar el seguro que poseen. Almacenaremos el nombre, sexo y fecha de nacimiento de cada una de las cargas familiares y su parentesco con el empleado.Se pide el modelo entidad/relacion.