--1. Crea las claves primarias y extranjeras en las nuevas tablas.
alter table autobuses
add constraint pk_matricula
primary key (matrícula);
alter table clientes_autobuses
add constraint pk_codcliente
primary key (códigocliente);
alter table reservas
add constraint pk_codreserva
primary key (códigoreserva);
alter table trayectos
add constraint pk_códigotrayecto
primary key (códigotrayecto);
alter table trayectos
add constraint fk_autobuses_trayectos
foreign key (matrícula)
references autobuses(matrícula);
--------
alter table reservas
add constraint fk_clientes_reservas
foreign key (códigocliente)
references clientes(códigocliente);
alter table reservas
add constraint fk_trayectos_reservas
foreign key (códigotrayecto)
references trayectos(códigotrayecto);
--2. Crea las siguientes consultas, son tan fáciles...
--Mostrar todos los autobuses cuya capacidad supere los 59 asientos.
select * from autobuses where capacidad = 59;
--Mostrar los nombres y teléfonos de los clientes que hayan reservado algo.
select nombres from clientes_autobuses
join reservas on clientes_autobuses.código_cliente=reservas.código_cliente;
--Mostrar los trayectos de la mañana, es decir que salgan antes de las 13:00
select * from trayectos where hora < '13:00';
--Mostrar el número total de trayectos que tiene la compañía
select count(códigotrayecto) from trayectos;
--Mostrar el número total de clientes que tiene la compañía
select count(códigocliente) from clientes;
--Mostrar el número total de trayectos que hace el autobús con matrícula 1021 FTP.
select count(*) from trayectos where matricula = '1021 FTP';
--Mostrar el número total de reservas para el trayecto 1.
select count (*) from reservas where códigotrayecto=1;
--Mostrar los nombres de clientes que han hecho su reserva para el trayecto 1.
select nombre from clientes
join reservas on clientes.códigocliente = reservas.códigocliente
where reservas.códigotrayecto = 1;
--------
--Exporta las tablas a un fichero .dmp con la utilidad exp (ver guía del DBA).
--Crea un nuevo tablespace llamado backup.
--Crea un usuario backupuser cuyo tablespace por defecto sea backup y adle permisos para todo.
--Importa el fichero .dmp en el nuevo tablespace
No hay comentarios:
Publicar un comentario