Examen 24/6/97. Cuestionario de Bases de Datos: Nota del Test: 3.5 puntos (0.25 por cuestión). Cada 3 cuestiones incorrectas anulan 1 correcta.

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

la consulta de código cod_con necesita para su resolución la relación de nombre nom_rel al menos un número veces de veces.

Tema II: El modelo relacional de datos. (2.7) Automatización

EXAMEN DE BASES DE DATOS 10/06/05 CUESTIONARIO

Cuestiones Exámenes Anteriores. Recogidas y Organizadas por temas de los exámenes de Sept 97, Junio 98, Sept 98 José Hernández Orallo

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

BASES DE DATOS CUESTIONES (TEMAS I Y II) (2º CURSO E.I. /F.I)

Lenguaje SQL (2ª Parte) Definición de datos

Concepto de vista. (con ciertas limitaciones). nivel físico) Una vista es una tabla virtual (no tiene una correspondencia a

Diseño de bases de datos

Práctica 3: El lenguaje SQL (2ª parte). (6ª sesión).

Práctica 3: Lenguaje SQL 2ª Parte: Definición de datos. Objetivos

Departamento de Lenguajes y Sistemas Informáticos

T07 Opciones de integridad referencial

ejercicios de consultas y normalización

CUESTIONARIO DE BASES DE DATOS 24/06/03. NOTA_OBTENIDA= (Bien_contestadas Mal_contestadas/3) 0,25.

DR/UC. DR/UC FACTURA(CIF, N_Factura, Fecha, Total) ASIGNATURA(Cod_Asignatura, Titulación, Nombre_Asig, Curso, Empresa_fotocopias, precio_fotocopia)

Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers

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

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

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

BD Activas: Motivación

Apartado A (3 puntos):

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

ejemplos de consultas SQL para obtener claves, DF y DMV en la BD de prendas de ropa

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

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

Programación de la asignatura BDA ( )

Carlos A. Olarte Ligaduras de Integridad y Restricciones sobre la BD

SQL: Lenguaje de Interrogación Estructurado

Aplicaciones de las vistas Concepto de vista Vistas en SQL Vistas en SQL.

Solución Ejercicio Prac. 3b (Esquema).

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

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

ejercicios de consultas y normalización

Diseño Lógico Específico. Diseño Lógico Tema 13

Ambos conjuntos son completamente distintos: propósito, acciones,... L M D. datos

Examen de Ficheros y bases de datos Convocatoria de junio II PARCIAL

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

DISEÑO DE BASES DE DATOS ºC Examen 8/Feb/2006

Bases de Datos Relacionales y SQL: Una Introducción

Unidad III. Bases de Datos

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

INTEGRIDAD REFERENCIAL

Tipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo

Tema II: El modelo relacional de datos Objetivos:

Programa de prácticas:

Departamento de Lenguajes y Sistemas Informáticos E.T.S. de Ingeniería Informática Universidad de Sevilla Avda Reina Mercedes, s/n.

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

ELEMENTOS DE BASES. Restricciones de dominio. Mecanismos de integridad. SQL Restricciones en el esquema de relación. Integridad de Entidad

2.5.- El lenguaje estándar SQL

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

DISEÑO FÍSICO. Tema 14. Diseño Físico

PL/SQL avanzado: Secuencias, triggers, cursores y subprogramas

Triggers 27/11/2014. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

BASES DE DATOS 2º CURSO E.U.I. / F.I. Práctica 3: El lenguaje SQL. 2ª Parte: Definición de datos 10 DE ABRIL DE 2000

Práctica 4: Estudio del SGBD Oracle 10 Gestión de Transacciones

A. Introducción. B. Los DATABASES TRIGGERS. PL/SQL en objetos de la base de datos. Oracle 11g - SQL, PL/SQL, SQL*Plus 271

Esquema Lógico FOROFO. EQUIPO (nombre:cadena, ciudad:cadena, país:cadena) CP (nombre) CAj (ciudad, país) CIUDAD

Cuestión: Proceso de consultas en BD Relacionales. Problema 1: Diseño conceptual

Práctica 3: El lenguaje SQL (1ª parte). Programa de prácticas: (5ª sesión). Lenguaje SQL: manipulación de datos (consulta y actualización):

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

FICHEROS Y BASES DE DATOS 2º ITIG 8/9/2001 NOMBRE

BASES DE DATOS (IG18 Semipresencial) Diseño Físico de Bases de Datos Relacionales.

Triggers. BASES DE DATOS Mercedes García Merayo

Solució Exercici Prac. 3b (Esquema).

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

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

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

Bases de Datos 1. Teórico: Structured Query Language

Objetivos. Temario. 1. Sistema de gestión de bases de datos

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

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

Bases de Datos Relacionales. Conceptos y consideraciones para su uso.

esquema E/R de la B.D. Universidad esquema relacional de la B.D. Universidad ejercicios con la B.D. Universidad

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

Tema II: El modelo relacional de datos. (2.4)

2.4.- Restricciones de Integridad Restricciones de Integridad Restricciones sobre atributos Restricciones sobre atributos

Examen de Ficheros y bases de datos ITIS Convocatoria de junio II PARCIAL

álgebra relacional 2

SQL - DDL y consultas de actualización. José Muñoz Jimeno Febrero 2015

esquema E/R de la B.D. Universidad

INFORMÁTICA MÉDICA. Profesor: MsC. Liz Armenteros Chávez

Bases de Datos 2. Teórico

FICHEROS Y BASES DE DATOS 2º ITIG 10/9/2003 NOMBRE

Bases de Datos SQL - Ejemplos

Oracle Database 12c SQL and PLSQL Fundamentals

INTRODUCCIÓN A LAS BASES DE DATOS. L.I Gerardo Benavides Pérez

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

La eficacia, representación fiel de la realidad, se consigue a través de un buen diseño lógico global de la base de datos

LEA ATENTAMENTE LAS PREGUNTAS Y RESUELVA CADA EJERCICIO COMO SE INDIQUE (EN CASO CONTRARIO EL EJERCICIO NO PUNTUARÁ) CADA EJERCICIO VALE UN PUNTO

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

Diseño de bases de datos

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

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

Iniciación al trabajo con bases de datos

ÍNDICE PRIMERA PARTE... 17

FUNDAMENTOS DE LAS BASES DE DATOS ( ) Datos Generales

Transcripción:

Examen 24/6/97 Cuestionario de Bases de Datos: Nota del Test: 3.5 puntos (0.25 por cuestión). Cada 3 cuestiones incorrectas anulan 1 correcta. Fórmula: Aciertos Errores 3

1) Al registrarse un punto de verificación ( checkpoint ) en el disco: A) se graban en disco las actualizaciones producidas por todas las transacciones que aparecen confirmadas en el diario. B) se confirman las transacciones anteriores al último fallo. C) las transacciones liberan sus reservas. D) se recuperan las transacciones.

2) Los índices en árbol garantizan el mismo número de accesos a bloques de disco para recuperar cualquier registro de datos: A) siempre. B) sí si son de búsqueda. C) sí si son árboles B +. D) sí si son árboles B.

3) Señalar, entre las siguientes, la opción falsa: A) en los ficheros secuenciales la inserción de registros es muy costosa, pero el borrado puede resultar muy simple. B) la organización de ficheros por dispersión no es aconsejable si se tienen que recuperar todos los registros en orden del campo de dispersión frecuentemente. C) los índices secundarios sobre cualquier campo proporcionan un método de acceso rápido pero son costosos de mantener. D) en la organización de ficheros por dispersión, los registros deben tener un campo numérico en el que se indica la dirección de disco donde se va a guardar.

6) Cual de las siguiente afirmaciones es cierta?: A) todas las bases de datos están constituidas por relaciones. B) el álgebra y el cálculo relacional de tuplas son lenguajes definidos para las bases de datos relacionales. C) un esquema relacional de base de datos se define exclusivamente con los esquemas de las relaciones. D) el cálculo relacional de tuplas permite hacer más consultas a una base de datos que el álgebra relacional.

7) Dados los siguientes esquemas de relaciones: R(A:dom1, B:dom2, C:dom3) S(A:dom1, E:dom2) T(F:dom1, G:dom2, H:dom3) y la siguiente expresión en Álgebra Relacional R donde C 1 (B,E) >< S Cuál es el esquema de la relación resultante? A) {(B,dom2), (E, dom2)} B) {(C,dom3), (E, dom2), (A, dom1)} C) para saberlo es necesario conocer qué tuplas contienen R y S. D) {(C, dom3), (E, dom2), (A, dom1), (B, dom2)}

8) Dado el siguiente esquema relacional: PROFESOR(dni:dom_dni, dp:dom_dp, tipo:dom_tipo) CP:{dni} DOCTOR(dni:dom_dni, dd:dom_dd) CP:{dni} CAj:{dni} PROFESOR NUMERARIO(dni:dom_dni, dn:dom_dn) CP:{dni} CAj:{dni} PROFESOR DOCENCIA(dni:dom_dni, codasg:dom_codasg) CP:{dni, codasg} CAj:{dni} PROFESOR donde la relación DOCTOR representa a los profesores que han leído la tesis y la relación NUMERARIO a los profesores que han aprobado una oposición, qué requerimiento resolvería la siguiente expresión del álgebra relacional? (((PROFESOR[dni] - DOCTOR[dni]) NUMERARIO[dni]) >< DOCENCIA)[dni]

8) (cont.) (((PROFESOR[dni] - DOCTOR[dni]) NUMERARIO[dni]) >< DOCENCIA)[dni] A) obtener el DNI de los profesores numerarios que no son doctores que imparten docencia en alguna asignatura. B) obtener el DNI de los profesores numerarios doctores que imparten docencia en alguna asignatura. C) obtener el DNI de todos los profesores que dan clase. D) obtener el DNI de los profesores no doctores que no son numerarios y que imparten docencia en alguna asignatura.

9) La independencia lógica es el nivel de independencia que se establece: A) entre el esquema lógico y los esquemas externos para que éstos y los programas de aplicación que los manipulan no se vean afectados por modificaciones del esquema lógico referentes a datos que no utilizan. B) entre los programas de aplicación escritos por los usuarios para asegurar que no se ven afectados unos por otros. C) entre el esquema físico y los esquemas externos para que éstos no se vean afectados por cambios referentes a la implementación física de las estructuras de datos lógicas. D) entre el esquema lógico y el esquema físico para que los cambios que se realicen en el esquema lógico no supongan la modificación de las organizaciones elegidas para los ficheros que implementan la base de datos.

10) Dadas las siguientes relaciones: A(a0:dom1, a1:dom2) B(b0:dom3, b1:dom1) CP={a0} CP={b0, b1} Uni{a1} CAj={b1} A (f(b1)=a0) Qué se puede afirmar si en una tupla de B el atributo b1 es nulo? A) que esa tupla de B no se relaciona con ninguna tupla de A. B) que la clave primaria de B debería estar formada sólo por el atributo b0. C) que esa tupla de B violaría la restricción de integridad referencial. D) que esta tupla de B violaría la restricción de clave primaria.

11) Dadas las siguientes relaciones: C(c0:dom4, c1:dom3, c2:dom1) B(b0:dom3, b1:dom1) CP={c0,c1} CP={b0, b1} CAj={c1, c2} B CAj={b1} A (f(b1)=a0) (f(c1)=b0,f(c2)=b1) Integridad referencial débil Borrado en cascada Modificación en cascada Supongamos que existen las tuplas: en C{(c0,X), (c1,y),(c2,nulo)}, y en B {(b0,y), (b1,z)}. Ante el borrado de la tupla de B: A) no se puede borrar porque violaría la integridad referencial. B) no se puede borrar si existe en A una tupla cuyo valor en el atributo a0 es Z. C) se realiza sin problemas, y no tiene ningún efecto sobre la tupla de C. D) se realiza sin problemas, y se borrará también la tupla de C.

12) Dadas las siguientes relaciones: A(a0:dom1, a1:dom2) B(b0:dom3, b1:dom1) CP={a0} CP={b0, b1} Uni{a1} CAj={b1} A (f(b1)=a0) Las operaciones que pueden violar la integridad referencial de la clave ajena de B son A) todas las que puedan suponer la aparición de nuevos valores en la clave ajena de B o en la primaria de A. B) borrar de B, insertar en A y modificar la clave ajena en B o la clave primaria en A. C) depende del tipo de integridad referencial que se elija. D) insertar en B, borrar de A y modificar la clave ajena en B o la clave primaria en A.

13) Dada una clave ajena CA de una relación R, que hace referencia a un subconjunto de atributos J de la relación S, cuál de las siguientes afirmaciones es cierta?: A) los dominios de los atributos de CA y los correspondientes de J pueden ser diferentes. B) J tiene que ser la clave primaria de S. C) J tiene restricción de unicidad en S. D) ningún atributo de J puede tener valor nulo. Nota: la unicidad en este caso permite que hayan J1 = (a, NULL) y J2 = (a, NULL)

14) Dadas las dos siguientes sentencias de SQL para la creación de una tabla: CREATE TABLE T1(col1 INTEGER PRIMARY KEY, col2 CHAR(30), col3 CHAR(5) NOT NULL REFERENCES T2(col1)) CREATE TABLE T1(col1 INTEGER PRIMARY KEY, col2 CHAR(30), col3 CHAR(5) REFERENCES T2(col1) MATCH FULL) Cuál de las siguientes afirmaciones es cierta? A) son equivalentes siempre. B) no son equivalentes. C) son equivalentes si la columna col1 de la tabla T2 es la clave primaria. D) son equivalentes si la columna col1 de la tabla T2 no es la clave primaria y no tiene definida una restricción de valor no nulo.

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) Pequeñísima parte de la información estelar de la Vía Láctea: Planeta(nom_pla: dom1, año: dom2, gravedad: dom7, detalles: dom3) CP: {nom_pla} VNN: {año} Astrónomo(nom_as: dom4, año: dom2, universidad: dom5) CP: {nom_as} VNN: {año} Descubrió{nom_pla: dom1, nom_as: dom4) CP: {nom_pla, nom_as} CAj: {nom_pla} Planeta CAj: {nom_as} Astrónomo Satélite{cod_sat: dom6, nombre: dom1, bautizó: dom4, año: dom2, planeta: dom1} CP: {cod_sat} VNN: {nombre} CAj: {bautizó} Astrónomo CAj: {planeta} Planeta VNN: {planeta}

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) 1.- Escribir una expresión en CRT para representar la siguiente restricción: La fecha de descubrimiento de cada planeta debe ser posterior a la fecha de nacimiento de los astrónomos que lo descubrieron 2.- Escribir una expresión en SQL para resolver el siguiente requerimiento: Para cada universidad presente en la base de datos, obtener cuántos planetas han descubierto sus astrónomos y cuántos satélites han bautizado. 3.- Escribir una expresión en SQL para resolver el siguiente requerimiento: Obtener el nombre de los planetas tales que todos sus satélites hayan sido bautizados por alguno de los astrónomos que lo descubrió Nota: sólo interesan los planetas con al menos un satélite 4.- Sea la siguiente propiedad El descubrimiento de un planeta como mucho se puede atribuir a cuatro astrónomos y además han de ser de la misma universidad Qué operaciones sobre la BD pueden suponer la violación de esa propiedad?

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) 1.- Escribir una expresión en CRT para representar la siguiente restricción: La fecha de descubrimiento de cada planeta debe ser posterior a la fecha de nacimiento de los astrónomos que lo descubrieron Planeta( PX ) Descubrio( DX ) Astronomo( AX ) ( PX )( DX )( AX ) AX. nom _ as = DX. nom _ as DX. nom _ pla = PX. nom _ pla PX. año > AX. año Cómo se resuelve a SQL? ( PX( DX( AX [a b]))) = ( PX( DX( AX [a b]))) = ( PX( DX( AX [a b]))) = ( PX( DX( AX [a b]))) = ( PX( DX( AX [ a b]))) = ( PX( DX( AX [a b])))

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) 2.- Escribir una expresión en SQL para resolver el siguiente requerimiento: Para cada universidad presente en la base de datos, obtener cuántos planetas han descubierto sus astrónomos y cuántos satélites han bautizado. SELECT A.universidad, Count(DISTINCT D.nom_pla), Count(DISTINCT S.cod_sat) FROM Satélite S RIGHT JOIN (Astrónomo A LEFT JOIN Descubrió D ON A.nom_as = D.nom_as) ON S.bautizó = A.nom_as WHERE A.Universidad IS NOT NULL GROUP BY A.universidad; Nota: el group by junta todos los NULLs pero sí que haría un grupo

Examen 24/6/97. Problemas. 2.- (Otra Solución) (Select A.universidad, Count(distinct D.nom_pla), Count (distinct S.cod_sat) from Astronomo A, Satelite S, Descubrio D, Astronomo A2 where A.nom_as=D.nom_as AND A2.nom_as= S.bautizó AND A.universidad = A2.universidad group by A.universidad) UNION ALL (Select A.universidad, Count(distinct D.nom_pla), 0 from Astronomo A, Descubrio D where A.nom_as=D.nom_as AND universidad IS NOT NULL AND NOT EXISTS (SELECT * FROM Satélite S, Astronomo A2 WHERE A2.nom_as= S.bautizó AND A.universidad = A2.universidad) group by A.universidad) UNION ALL (Select A.universidad, 0, Count(distinct S.cod_sat) from Astronomo A, Satélite S WHERE A.nom_as= S.bautizó AND universidad IS NOT NULL AND NOT EXISTS (SELECT * FROM Descubrio D, Astronomo A2 where A2.nom_as=D.nom_as AND A.universidad = A2.universidad) group by A.universidad) UNION ALL (Select A.universidad, 0, 0 from Astronomo A WHERE universidad IS NOT NULL AND NOT EXISTS (SELECT * FROM Astr. A2, Satélite S, Desc. D where A.universidad=A2.universidad AND (A2.nom_as=S.bautizó OR A2.nom_as=D.nom_as)) group by A.universidad);

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) 3.- Escribir una expresión en SQL para resolver el siguiente requerimiento: Obtener el nombre de los planetas tales que todos sus satélites hayan sido bautizados por alguno de los astrónomos que lo descubrió Nota: sólo interesan los planetas con al menos un satélite SELECT S.planeta FROM Satelite S WHERE NOT EXISTS (SELECT * FROM Satelite S1 WHERE S.nom_pla = S1.planeta AND S1.bautizó NOT IN (SELECT D.nom_as FROM Descubrió D WHERE D.nom_pla = S.planeta) );

Examen 24/6/97. Problemas. PARTE PRÁCTICA (6,5 ptos.) 4.- Sea la siguiente propiedad El descubrimiento de un planeta como mucho se puede atribuir a cuatro astrónomos y además han de ser de la misma universidad Qué operaciones sobre la BD pueden suponer la violación de esa propiedad? - en Descubrió UPDATE(nom_pla), UPDATE(nom_as), INSERT - en Astrónomo: UPDATE(universidad) (No se contemplan los cambios que afecten a las claves ajenas, como: - en Astrónomo UPDATE(nom_as) - en Planeta UPDATE(nom_pla) )

Examen 24/6/97. Problemas. 4.- Si nos hubieran pedido REALIZAR UN TRIGGER PARA CONTROLAR UNA DE LAS OPERACIONES CREATE TRIGGER T1 AFTER INSERT ON DESCUBRIO FOR EACH ROW DECLARE Aux NUMBER; BEGIN SELECT COUNT(*) INTO aux FROM DESCUBRIO D WHERE :new.nom_pla = D.nom_pla; IF aux > 4 THEN RAISE_APPLICATION_ERROR(-20000, Más de 4 astrónomos'); END IF; SELECT COUNT(DISTINCT A.universidad) INTO aux FROM DESCUBRIO D, ASTRONOMO A WHERE :new.nom_pla = D.nom_pla AND A.nom_as = D.nom_as; IF aux > 1 THEN RAISE_APPLICATION_ERROR(-20000, Más de 1 universidad'); END IF; END;