Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 3-Septiembre Nombre:

Documentos relacionados
Ficheros y Bases de Datos Curso Primer Parcial. 7 de FEBRERO de Nombre:

Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 10-Feb Nombre:

Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 28-Junio Nombre:

Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 1-Junio Nombre:

Nombre: Se debe entregar esta hoja

Bases de Datos y Sistemas de Información Curso Ingeniería Superior Primer Parcial.

Examen de Bases de Datos Curso Grado en Ingeniería del Software Convocatoria de Septiembre. Nombre:

Bases de Datos Curso Grado en Ingeniería del Software Examen Junio. Nombre:

Apartado A (3 puntos):

FUNDAMENTOS DE LAS BASES DE DATOS ( ) Datos Generales

EXAMEN DE BASES DE DATOS 11/06/04 Esquema de trabajo

Laboratorios de BASES DE DATOS. (I.T. Informática)

Ejercicios SQL - Manipulación de Datos - Solución

Examen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015

Ser capaces de realizar una consulta dentro de otra

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

Examen de Bases de datos Grado de Ingeniería en Informática 3 de septiembre, 2015

FUNDAMENTOS DE BASES DE DATOS. Examen Febrero Solución

TEMA 7 TEORÍA DE LA NORMALIZACIÓN EJERCICIOS PROPUESTOS

Bases de Datos SQL - Ejemplos

FICHEROS Y BASES DE DATOS 2º ITIG 19/12/2000 NOMBRE

Bases de Datos Geográficos

ÍNDICE PRIMERA PARTE... 17

SQL: Lenguaje de Interrogación Estructurado

Examen de Bases de datos y sistemas de información I PARCIAL

SQL. Carlos A. Olarte BDI

Bases de Datos Curso Grado en Ingeniería del Software Examen Junio. Nombre:

Departamento de Lenguajes y Sistemas Informáticos. Avda Reina Mercedes s/n Sevilla Tlf/Fax

Diseño de Bases Relacionales

Práctica 7. Ejercicios:

Operadores. Además se pueden emplear en sentencias SET.

ejercicios de consultas y normalización

ejercicios de consultas y normalización ejercicios de consultas y normalización ejercicios de consultas y normalización

Bases de Datos Curso Grado en Ingeniería del Software Examen Septiembre. Nombre: Se debe entregar esta hoja

FUNDAMENTOS ORACLE 12C

SQL Avanzado. José Muñoz Jimeno Febrero 2015

1º) Consulta que pida mes y año y muestre los datos completos de los obreros que han trabajado sin repeticiones. C11

Oracle Fundamentos. Programa de Estudio.

Oracle Fundamentos. Programa de Estudio.

FICHEROS Y BASES DE DATOS 2º ITIG 26/6/99. (2.5 puntos)

Adquisición y Tratamiento de Datos (Febrero 2009).

Consulta - -- borrado de lavado del Página número 1

UNIVERSIDADE DE VIGO ESCOLA TÉCNICA SUPERIOR DE ENXEÑEIROS DE MINAS MÉTODOS COMPUTACIONALES. Transparencias

SQL: Consultas Avanzadas. Bases de Datos

GUÍA DOCENTE BASES DE DATOS

CONOCIMIENTOS, COMPRENSIONES Y RECOLECCIÓN DE Pacto Pedagógico

EXAMEN DE ESTRUCTURAS DE LA INFORMACIÓN (Junio de 2008)

SISTEMAS DE GESTIÓN DE BASES DE DATOS EXAMEN FINAL DE FEBRERO 16 de Febrero de 2001

Examen de Ficheros y bases de datos (cód. 520) Ingeniería Técnica en Informática de Gestión Convocatoria de junio I PARCIAL

Tarea 2 - Consultas en SQL Solución propuesta por los docentes

SELECT listadecampos FROM nombredetablas WHERE condicionesdebúsqueda;

Oracle Database 12c SQL and PLSQL Fundamentals

Programa de la asignatura Curso: 2011 / 2012 (1590)SISTEMAS DE GESTIÓN DE BASES DE DATOS (1590)

Ejemplo de gestión de datos con SQL

SQL. Amparo López Gaona. México, D.F. Noviembre 2003

Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012

Capítulo 4. Realización de consultas

Facultad de Informática UCM - Examen Parcial Convocatoria de Febrero Curso 2009/2010 Grupo A Bases de Datos y Sistemas de la Información SOLUCIÓN

BASES DE DATOS I ALTERNATIVA DE SOLUCIÓN AL TALLER 1: SQL ( ) Dados los siguiente esquemas:

A. Crear el script de la BD Hotel, utilizando el PostgreSQL (pgadmin). Y guardarlo como.sql y.txt, y realizar el Backup de la BD.

Operador Restricción

ÍNDICE INTRODUCCIÓN...17

Taller de Herramientas de Software : ST 213 Secc: V y W

UNIVERSIDAD NACIONAL DE ITAPUA U.N.I. Creada por Ley Nº:1.009/96 del 03/12/96 Facultad de Ingeniería PROGRAMA DE ESTUDIOS

GUÍA DOCENTE BASES DE DATOS

Laboratorios de BASES DE DATOS. (I.T. Informática)

GUÍA DOCENTE BASES DE DATOS

Funciones agregadas. Funciones agregadas: COUNT

Access SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.

Modelamiento y Diseño de Base de Datos

BASES DE DATOS I ALTERNATIVA DE SOLUCIÓN AL TALLER 2: SQL ( ) Persona( doc_id, nombre, direccion ) Vehiculo( numero_licencia, año, marca )

Uso de SQL. "WHERE id = " + cuentas[i].getid() o bien ResulSet r =s.executequery("select nombre FROM alumno" + "WHERE id = " + cuentas[i].

Examen de Ficheros y bases de datos (cód. 520) Ingeniería Técnica en Informática de Gestión Convocatoria de septiembre I PARCIAL

GUÍA DOCENTE BASES DE DATOS

Modelo Relacional. El modelo relacional...1 El modelo entidad relación (que vimos ayer) es un modelo conceptual que sirve

álgebra relacional 2

Ejemplo completo: Empleados.

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.

ejercicios de consultas y normalización

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

Unidad 2 Lenguaje de Manipulación de Datos (DML)

CC BASES DE DATOS OTOÑO 2018

Manual de Sentencias Básicas en SQL

FICHEROS Y BASES DE DATOS 2º ITIG 13/7/2001 NOMBRE

Manipulación de datos en SQL

Estructura de Dades i de la Informació 2

ALUMNOS Y BECAS (Ejemplo de Normalización)

Programa de la asignatura Curso: 2009 / 2010 SISTEMAS DE GESTIÓN DE BASES DE DATOS (1590)

CC BASES DE DATOS OTOÑO Clase 5: SQL (II) Aidan Hogan

SQL (DML) Carlos A. Olarte Gestión y Modelación de SQL Datos (DML)

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón

Video Club Tarea 2 - Solución

Laboratorio de Bases de Datos (EBB)

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)

Transcripción:

Ficheros y Bases de Datos Curso 2009-10 Ingeniería Técnica de Informática Primer Parcial. 3-Septiembre-2010 Nombre: Se debe entregar esta hoja 2 horas 1 (3,5 puntos A partir de la información sobre la BD que se describe más abajo, se pide: a (1,5 puntos El esquema entidad / relación, incluyendo atributos, claves y restricciones de cardinalidad y/o participación. b (1 puntos Pasar al modelo relacional optimizado. c (0,5 puntos Represente las reglas de integridad referencial resultantes. d (0,5 puntos Añadir una lista de restricciones (que no sean de integridad referencial que no vengan reflejadas en el modelo relacional Se desea diseñar una base de datos para la gestión del servicio post-venta de una compañía fabricante de coches, a través de su red de concesionarios. El fabricante tiene bastantes concesionarios repartidos por distintas ciudades. De cada concesionario se suele conocer un nº identificador de concesionario, su dirección, ciudad, teléfono y Director del mismo. Cada concesionario dispone de al menos un taller de postventa (para reparaciones y revisiones de los coches de la marca. Un taller pertenece siempre a uno o varios concesionarios, pero con un límite de tres concesionarios, por razones de negocio. Cada taller tiene siempre asignado un único Comercial post-venta. Del taller se registra un identificador único de taller, nº de mecánicos, volumen de facturación y su Comercial Post-Venta. Cada Comercial post-venta tendrá asignado uno o dos talleres como máximo. También suele tener asignado un número variable de Cuestionarios de Calidad, aunque puede no tener ninguno. El volumen total de cuestionarios es siempre distribuido entre los comerciales disponibles. El Cuestionario de Calidad es una encuesta anónima que sólo contiene 5 preguntas realizadas a los clientes sobre el servicio post-venta. Las respuestas a cada pregunta se almacenan para analizar la calidad de dicho servicio. Cada Cuestionario de Calidad tiene un identificador único. De cada Comercial post-venta se quiere registrar su DNI, nombre, apellidos y el contenido de todos los Cuestionarios de Calidad que ha realizado. Además, cada Comercial puede asistir a un número variable de clientes. Cada cliente es siempre asistido un, y nunca por más de uno, comercial. La ficha de cada cliente contiene su DNI, nombre, apellidos, modelo de coche, antigüedad y comercial asignado. 1

Solución: DNI DNI Pregunta1 Pregunt... Pregunta5 Cliente N 1 1 N asistido Comercial asignado (1,1 (0,N (0,N (1,1 (1,2 1 Cuestionario de Calidad IdCustion.. vinculado (1,1 2 IdTaller Taller N pertenece 3 (1,3 (1,N Concesionario NºConces. b Concesionario (NºConcesionario, dirección, ciudad, telefono, Director Taller_Pertenece (NºTaller, NºConcesionario Taller (NºTaller, n_mecánicos, volumen_facturación, Comercial Cuestionario(IdCuestionario,Comercial, Pregun1, Pregun2,, Pregun5 Comercial (DNI, nombre, apellidos Cliente (DNI, nombre apellidos, modelo coche, antigüedad, Comercial c Concesionario (NºConcesionario, dirección, ciudad, telefono, Director Taller_Pertenece (NºTaller, NºConcesionario Taller (NºTaller, n_mecánicos, volumen_facturación, Comercial Cuestionario(IdCuestion,Comercial*, Pregun1, Pregun2,, Pregun5 Comercial (DNI, nombre, apellidos Cliente (DNI, nombre apellidos, modelo coche, antigüedad, Comercial d Algunas restricciones que no conserva dicho modelo relacional son: - Participaciones totales en M a M: Cada concesionario dispone de al menos un taller o Un taller pertenece siempre a uno [o varios] concesionarios - Participación máxima: Un taller pertenece siempre a [ ] un límite de tres concesionarios o Cada Comercial post-venta tendrá asignado [..] dos talleres como máximo. 2

2 (4 puntos Para organizar los proyectos en los que participa cada empleado se ha diseñado el siguiente modelo relacional: Proyectos (numempleado, numproyecto, supervisor, numhoras Empleados(numEmpleado, nombre, apellido, salario, fechanacimiento, ciudad Realizar las siguientes consultas SQL: a (0,75 puntos Listar sin duplicados el nombre y apellido de los empleados que tienen un supervisor más mayor de su misma ciudad. Ordenar por nombre. SELECT DISTINCT nombre, apellido FROM Empleados E, Proyectos P,Empleados S WHERE E.numEmpleado= P.numEmpleado AND supervisor = S.numEmpleado AND E.fechaNacimiento > S.fechaNacimiento AND E.ciudad = S.ciudad ORDER BY nombre. b (0,75 puntos Mostar los empleados cuyo nombre empieza por A que no tengan asignado ningún proyecto. Usar subconsulta correlacionada. FROM Empleados E WHERE NOT EXISTS (SELECT * WHERE numempleado = E.numEmpleado AND nombre LIKE A% c (0,5 puntos Mostar los empleados cuyo nombre empieza por A que no tengan asignado ningún proyecto. Usar subconsulta no correlacionada FROM Empleados E WHERE numempleado NOT IN (SELECT numempleado AND nombre LIKE A% d (0,5 puntos Mostar los empleados cuyo nombre empieza por A que no tengan asignado ningún proyecto. No usar subconsulta. FROM Empleados E LEFT OUTER JOIN Proyectos P ON E.numEmpleado= P.numEmpleado WHERE nombre IS NULL AND E.nombre LIKE 'A%' e (0,5 puntos Mostrar el nombre y apellido de todos los empleados con el número de proyectos que tienen asignados. Si no están en ningún proyecto debe aparecer que el número de proyectos es cero., count(* AS numproyectos FROM Empleados E, Proyectos P WHERE E.numEmpleado= P.numEmpleado UNION ALL, 0 3

FROM Empleados E WHERE NOT EXISTS (SELECT * WHERE numempleado = E.numEmpleado f (0,5 puntos Qué empleado de Madrid es supervisor de más proyectos? Indicar cuantos proyectos supervisa., count(* AS numproyectos P, Empleados S WHERE supervisor = S.numEmpleado AND CIUDAD = Madrid HAVING count(* >= ALL (SELECT count(* P, Empleados S WHERE supervisor = S.numEmpleado AND CIUDAD = Madrid g (0,5 puntos Subir un 10% el salario de los supervisores que sumen más de 100 horas de trabajo supervisado. UPDATE FROM Empleados SET Salario = Salario*1.1 WHERE numempleado IN (SELECT supervisor GROUP BY supervisor HAVING SUM(numHoras>100 3 (2,5 puntos Dado la relación Proyectos (numempleado, numproyecto, supervisor, numhoras del ejercicio anterior, se añade la restricción de que un supervisor de empleados sólo puede serlo de un proyecto (un supervisor no puede supervisar en distintos proyectos. Responder las siguientes preguntas justificando las respuestas. a (0,5 punto Listar un conjunto de dependencias funcionales minimal. b (0,5 puntos Calcular las claves candidatas de S c (0,5 puntos Determinar si la relación Proyectos está en 3FN. d (0,5 puntos Determinar si la relación Proyectos está en FNBC. e (0,5 puntos La descomposición en R 1 (numproyecto, supervisor y R 2 (numempleado, supervisor, numhoras, preserva la propiedad de reunión no aditiva?. preserva las dependencias funcionales? Solución: a S={numEmpleado, numproyecto->supervisor, numempleado, numproyecto->numhoras, supervisor->numproyecto} b Claves candidatas de Proyectos: {numempleado, numproyecto} {numempleado, supervisor} c Según la definición, una relación R está en normalizada en 3FN si: Para cualquier dependencia funcional X Y no trivial en S, X es superclave en R, es decir X R, o bien Y forma parte de una clave candidata en R. 4

{numempleado, numproyecto} es superclave {supervisor} no es superclave, pero {numproyecto} forma parte de una clave candidata Luego la relación Proyectos está en 3FN d Según la definición, una relación R está en normalizada en FNBC si: Para cualquier dependencia funcional X Y no trivial en S, X es superclave en R, es decir X R. {supervisor}, NO es superclave en R, por tanto Proyectos NO está en forma normal FNBC. e Para ver si esta descomposición R 1 (numproyecto, supervisor y R 2 (numempleado, supervisor, numhoras preserva la propiedad de reunión no aditiva, podemos comprobar la propiedad vista en clase: (( R R2 ( R1 R2 S (( R ( R R S 1 o bien R1 2 2 1 Si tomamos este primer caso, tenemos que: R R R = supervisor numproyecto S (( ( 1 2 1 R2 Podemos afirmar que la descomposición propuesta sí preserva la propiedad de reunión no aditiva. Nota: Otra forma de demostrarlo es ver que la descomposición dada es la salida del algoritmo que descompone en FNBC, que preserva la propiedad de reunión no aditiva En esta descomposición se ve que no se preserva la dependencia funcional numempleado, numproyecto->numhoras, pues ni R 1 ni R 2 contienen todos los 3 atributos 5