Tarea gbd03
Tarea gbd03
Tarea gbd03
EJERCICIO 1 2 puntos
Partiendo del siguiente modelo relacional correspondiente a la base de datos de visitas a monumentos,
de la agencia nacional de turismo de Italia:
Escribe las instrucciones en SQL necesarias para crear la base de datos Turismo_Italia, teniendo en cuenta
las siguientes especificaciones:
Las columnas AforoMaximo y NumVisitantes toman valores enteros.
Las columnas Tarifa y TarifaReserva, Precio, ImporteTicket pueden contener decimales
La numeración de los tickets NumTicket es de tipo autoincrementado.
Define para las claves ajenas restricciones de actualización en cascada y que no permita el
borrado de registros relacionados.
Consejos prácticos:
* Mantén un orden a la hora de crear las tablas, definiendo cada columna en una línea que finalice con
una coma.
* Define todas las restricciones una vez especificadas todas las columnas y después de la última coma.
Así añades la PRIMARY KEY y otros tipos de restricciones como CHECK, INDEX, UNIQUE, etc. excepto las
FOREIGN KEY (claves ajenas).
* Para evitar que al definir una restricción de tipo clave ajena hagas referencia a una tabla que todavía
no has creado es recomendable crear primero todas las tablas, en el orden que quieras, y después
añadir las claves ajenas modificando las tablas creadas con ALTER TABLE, así te aseguras de que todas
las tablas estén definidas
EJERCICIO 2 1 punto
Modifica la base de datos anterior Turismo_Italia_TuNombre.sql. para añadir las tablas: TRABAJADORES,
T_MANTENIMIENTO, T_GUIAS TURÍSTICOS y Están asociados. (la tabla PUNTOS DE VISITA ya está creada
en el supuesto anterior)
EJERCICIO 3 2 puntos
Ejecuta el script anterior en MySQL desde una instancia de MySQL Workbench guardando la base de
datos generada con el nombre Turismo_Italia_TuNombre.sql. Mediante la opción del menú de MySQL
Workbench: Database / Reverse Engineer, genera el esquema relacional de la base de datos. Modifica si
es necesario el esquema generado para que se adapte al modelo y captura la pantalla resultante. (Revisa
sobre todo las cardinalidades mínimas y máximas)
EJERCICIO 4 5 puntos
Sobre la base de datos Turismo_Italia_TuNombre.sql. realiza las siguientes modificaciones:
Tabla TRABAJADORES
3.1 Añade un índice que facilite búsquedas frecuentes por Apellido1, Apellido2 y Nombre, sin
duplicados.
Tabla TICKETS
3.3 Añade una restricción que indique que el valor por defecto de la FechaEmisión es la fecha actual.
3.4 Añade una clave artificial denominada IdServicioTicket, cuyos valores se incrementen
automáticamente. Mantén el resto de restricciones de la tabla
3.5 La columna Tipo puede contener los valores: individual, grupo, ambos a la vez o ninguno.
Tabla RESERVAS
3.6 Modifica el tipo de datos de la columna TarifaReserva para que admita únicamente valores
enteros.
3.7 Añade una restricción en la columna NumVisitantes para que no admita valores nulos.
• Captura de la pantalla donde se muestra el esquema gráfico del modelo relacional de la base
de datos generada a partir del script de SQL
Ejercicio 4: 5 puntos:
Consejos y recomendaciones.
• La ventaja de utilizar el editor SQL proporcionado por una herramienta gráfica es que puedes
ejecutar el script y comprobar si tienes algún error antes en la escritura del código.
• Cuando el editor de SQL te muestre un error, lee atentamente el mensaje (estará en inglés) y
la fila o la instrucción a la que corresponde.
• Utiliza distintas líneas para la definición de cada campo y así sabrás mejor donde está el error.
• No olvides que cuando hay claves ajenas, las tablas referenciadas deben estar creadas
previamente.
• Comprueba que los tipos de datos y los tamaños sean adecuados al atributo que definen.
• Recuerda que los tipos de datos y los tamaños deben coincidir en las claves que se relacionan.
• No olvides elegir el tipo de tabla adecuado para trabajar con claves ajenas.
• Guarda el script para poder recargarlo de nuevo si al probar las sentencias dañas las tablas.
Indicaciones de entrega.
Una vez realizada la tarea elaboraras un único documento dónde figuren las respuestas
correspondientes; tanto las sentencias SQL como la captura de pantalla final. El envío se realizará
a través de la plataforma de la forma establecida para ello, y el archivo se nombrará siguiendo las
siguientes pautas:
apellido1_apellido2_nombre_GBD03_Tarea
Asegúrate que el nombre no contenga la letra ñ, tildes ni caracteres especiales extraños. Así por
ejemplo la alumna Begoña Sánchez Mañas para la tercera unidad del MP de GBD, debería
nombrar esta tarea como...
sanchez_manas_begona_GBD03_Tarea