FBD examen final de teoría, 9 de junio de 2016

D.N.I.:____________  Apellidos y Nombre:____________________________________________

Aula y fecha:________________________        Tiempo: 75 min        Puntuación: 8 (x5 = 40 puntos)

  1. Representa las dependencias funcionales que han dado lugar a estas tablas (0/2=más de 1 error / sin errores)

De esta tabla, T(dni, expediente, nombre, número, fecha), tras aplicar todos los pasos necesarios para normalizar hasta FNBC se han obtenido estas otras tablas

ALUMNO (dni, expediente, nombre) CP (dni) CAlt(expediente)

MATRÍCULA (número, alumno, fecha) CP(número) CAj(alumno)  ALUMNO

¿Qué dependencias funcionales había entre los atributos de T para que el esquema definitivo haya sido el de ALUMNO Y MATRÍCULA?

  1.  Transforma este esquema entidad-relación en un esquema relacional (0/1/2=más de 1 error / 1 error / sin errores) No es necesario definir dominios para ningún atributo. Cualquier restricción que se pierda en la transformación debes reflejarla como nota al pie.

 


  1. Relaciones (0/1/2=más de 2 errores/2 errores/1 o sin errores)

Se trata de una base de datos de una empresa de música en streaming. Mantiene datos de usuarios a los que se factura, listas personalizadas y álbumes que contienen canciones y los artistas autores de los anteriores.

USUARIO(email,nombre,pais)

CP(email)

FACTURA(numero, numFiscal, fecha, email)

CP(email, numero)

CAlt(numFiscal)

CAj(email) → USUARIO

LISTA(id, usuario)

CP(id,usuario)

CAj(usuario) → USUARIO

CAj(id) → ELEMENTO

ELEMENTO(id)

CP(id)

ARTISTA(id,nombre)

CP(id)

CAj(id) → ELEMENTO

ALBUM(id,titulo,artista)

CP(id)

CAlt(artista)

CAj(artista) → ARTISTA

CAj(id) → ELEMENTO 

CANCION(id,album,titulo)

CP(id,album)

CAj(album) → ALBUM

CAj(id) → ELEMENTO

Según el esquema anterior, rellena las siguientes expresiones con sus valores correspondientes:

Card(FACTURA, de) =  

Card(USUARIO, de) =

Card(ELEMENTO, lista) =  

Card(USUARIO, lista) =

Card(ARTISTA, es) =  

Card(ELEMENTO, es) =

Card(ALBUM, de) =  

Card(ARTISTA, de) =

Card(CANCION, en ) =

Card(ALBUM, en) =

  1. Dado el esquema de base de datos anterior, y suponiendo que todos los dominios son iguales, resuelve en álgebra relacional (0/1/2=ninguna/1 correcta/2 correctas)
  1. select nombre from usuario where email in (select email from factura where fecha = '2016-06-09').

  1. select m.titulo,a.nombre from album m, artista a where m.artista = a.id.