Está en la página 1de 2

BD Jardineria (hacer los que están en rojo):

1. Se desea una transacción que primero actualice la tabla clientes para que aquellos cuyo país sea
España corrija los errores que tengan en dicho valor por problemas de cotejamiento al crear la
tabla (y por tanto se almacenó EspA±a) o porque se teclease como valor Spain. A continuación
debe crearse una vista llamada ClientesExtranjeros que guarde los datos de los clientes que no
sean españoles. Y por último visualizar los datos de dicha vista.

update clientes SET pais='España'


WHERE pais='Spain' OR pais='España';
COMMIT;

CREATE OR REPLACE VIEW clientesExtranjeros AS


SELECT * FROM clientes
WHERE pais != 'España';

2. Se desea una transacción que permita añadir los siguientes clientes:

Luego crear una vista llamada clientillos que contenga todas las columnas de la tabla clientes
excepto las que puedan tener valor NULL e insertar, sobre ella, otra fila nueva. ¿Qué ocurre? ¿Y si la
vista tuviera la opción WITH READ ONLY ?
Luego crear otra vista llamada clientuchos que contenga las mismas columnas que clientillos,
excepto la ciudad e insertar otra fila nueva, sobre la vista. ¿Qué ocurre?
Luego crear otra vista llamada madrileños que contenga las mismas columnas que clientillos,
pero salgan sólo los de la ciudad de ‘Madrid’ . Cambiarle a una fila la ciudad, sobre la vista. ¿Qué
ocurre? ¿Y si la vista tuviera la opción WITH CHECK OPTION ?

3. Se desea visualizar los datos de los clientes con nombres duplicados, a continuación los datos de
los clientes con nombres duplicados excepto los de su primera aparición en la tabla (por ejemplo,
del cliente de nombre Lasa S.A, solo deben aparecer los datos de código 12 y 122 y no los de
código 6) y por último visualizar los datos de los clientes con nombres duplicados pero solo los de
su primera aparición. Rehacerlo luego usando vistas.

4. Se desea una transacción que corrija los errores de duplicidad de datos de clientes de la siguiente
manera: Primero se crea una vista que guarda los datos de los clientes que están repetidos
excepto los de su primera aparición en la tabla y luego se borran de la tabla Clientes dichos
datos.

5. Se desea una transacción que primero crea una vista llamada PedidosRechazados con los datos
de los pedidos que se han rechazado, crea también una vista llamada DetallePedidosRechazados
con los datos de DetallePedidos correspondientes a pedidos rechazados y luego borra los datos
de las tablas Pedidos y DetallePedidos de los pedidos rechazados.
6. Se desea una transacción que actualiza la tabla Pedidos poniendo el valor ‘Entregado’ en aquellos
pedidos que figuran como pendientes pero tienen fecha de entrega no nula y a continuación crea
una vista llamada ClientesParaLlamar de los clientes (ordenados por nombre) que tienen pedidos
pendientes en la que aparezcan los datos de nombre del cliente, teléfono, código y fecha del
pedido y código, cantidad y nombre de los productos pedidos.

7. Se desea una transacción que borre todos los datos de los empleados de las oficinas de Japón así
como todo lo que se le relacione (Clientes, Pedidos de dichos clientes y DetallePedidos de dichos
Pedidos). Hacerlo también usando vistas.