DP 12 2 Practice Esp

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 4

academy.oracle.

com

Programación de Bases de Datos con SQL


12.2: Actualización de Valores de Columna y Supresión de
Filas Actividades de Práctica

Objetivos
 Crear y ejecutar una sentencia UPDATE
 Crear y ejecutar una sentencia DELETE
 Crear y ejecutar una consulta que utilice una subconsulta para actualizar y suprimir
datos de una tabla
 Crear y ejecutar una consulta que utilice una subconsulta correlacionada para
actualizar y suprimir datos de una tabla
 Explicar cómo las restricción de integridad de clave ajena y clave primaria afectan a
las sentencias UPDATE y DELETE
 Explicar el objetivo de la cláusula FOR UPDATE en una sentencia SELECT

Terminología
Identifique el término para cada una de las siguientes definiciones.

Update Modifica filas existentes en una tabla

Correlated Subquery Update Recupera información de una tabla y utiliza esta información para
actualizar otra tabla
Integrity Constraints Se asegura de que los datos cumplen un juego de reglas
predefinido

Correlated Subquery Delete Suprime la información en una tabla enlazada en función de lo


que se ha suprimido en la otra tabla
DELETE Elimina filas existentes en una tabla

Inténtelo/Resuélvalo

NOTA: Las tablas de copia no existen en esta sección

Si no es posible realizar algún cambio, explique el motivo.

1. Monique Tuttle, la jefa de Global Fast Foods, ha enviado una circular solicitando un
cambio inmediato de los precios. El precio de un batido de fresa subirá de 3,59 a 3,75 $,
y el precio de las patatas fritas subirá a 1,20 $. Realice los siguientes cambios en la tabla
copy_f_food_items.
Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y sus filiales. Todos los demás nombres pueden ser
marcas comerciales de sus respectivos propietarios.
UPDATE copy_f_food_items SET price = 3.75
WHERE LOWER = 'strawberry shake';
UPDATE copy_f_food_items SET price = 1.20
WHERE LOWER= 'fries';
2. Bob Miller y Sue Doe han sido empleados destacados de Global Fast Foods. La dirección
ha decidido recompensarlos aumentando su paga por horas extra. Bob Miller recibirá 0,75
$ adicionales por hora y Sue Doe recibirá 0,85 $ adicionales por hora. Actualice la tabla
copy_f_staffs con estos nuevos valores. (Nota: Bob Miller actualmente no recibe paga por
horas extra. ¿Qué función debe utilizar para convertir un valor nulo en 0?)
R: UPDATE copy_f_staffs  SET overtime_rate = NVL(overtime_rate, 0) + 0.75
WHERE LOWER(first_name || ' ' || last_name) = 'bob miller';
UPDATE copy_f_staffs  SET overtime_rate = NVL(overtime_rate, 0) + 0.85
WHERE LOWER(first_name || ' ' || last_name) = 'sue doe';

3. Agregue los pedidos que se muestran a continuación a la tabla copy_f_orders de Global


Fast Foods:

ORDER_NUMBER ORDER_DATE ORDER_TOTAL CUST_ID STAFF_ID


5680 June 12, 2004 159.78 145 9
5691 09-23-2004 145.98 225 12
5701 July 4, 2004 229.31 230 12
INSERT INTO copy_f_orders
(order_number,order_date,order_total,cust_id,staff_id)
VALUES(5680,TO_DATE('June 12, 2004','Month dd, yyyy'), 159.78, 145, 9);

4. Agregue los nuevos clientes que se muestran a continuación a la tabla copy_f_customers.


Es posible que ya haya agregado a Katie Hernandez. ¿Podrá agregar todos estos
registros correctamente?

ID FIRST_ LAST_ ADDRESS CITY STATE ZIP PHONE_NUMBER


NAME NAME
145 Katie Hernandez 92 Chico Los CA 98008 8586667641
Way Angeles
225 Daniel Spode 1923 Denver CO 80219 7193343523
Silverado
230 Adam Zurn 5 Admiral Seattle WA 4258879009
Way

5. Sue Doe ha sido un miembro destacado del personal de Global Fast Foods y se le ha
concedido un aumento salarial. Ahora recibirá la misma paga que Bob Miller. Actualice su
registro en copy_f_staffs.

UPDATE copy_f_staffs  SET salary =


(SELECT salary FROM copy_f_staffs WHERE LOWER = 'bob miller')
WHERE LOWER = 'sue doe';

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y sus filiales. Todos los demás nombres pueden ser
marcas comerciales de sus respectivos propietarios.
2

6. Global Fast Foods está ampliando su personal. La jefa, Monique Tuttle, ha contratado a
Kai Kim. No está disponible toda la información en este momento, pero agregue la
información que se muestra aquí.

ID FIRST_NAME LAST_NAME BIRTHDATE SALARY STAFF_TYPE


25 Kai Kim 3-Nov-1988 6,75 Order Taker
INSERT INTO copy_f_staffs
(id, first_name, last_name, birthdate, salary, staff_type)
VALUES
(25, ‘Kai’, ‘Kim’, ‘03-Nov-1988’, 6.75);

7. Ahora que está disponible toda la información de Kai Kim, actualice su registro en Global
Fast Foods para incluir lo siguiente: Kai tendrá el mismo jefe que Sue Doe. No podrá
trabajar horas extra. Deje los valores de formación, presupuesto del jefe y objetivo del jefe
como null.

8. Ejecute la siguiente sentencia SQL. Registre los resultados.

DELETE from departments


WHERE department_id = 60;

9. Kim Kai ha decidido volver a la universidad y no tiene tiempo para trabajar y asistir a
las clases. Suprímalo de la plantilla de Global Fast Foods. Verifique que el cambio ha
sido correcto.
DELETE *
FROM copy_f_staffs
WHERE LOWER(first_name ||’ ‘|| last_name) = ‘kai kim’;

Copyright © 2019, Oracle y/o sus filiales. Todos los derechos reservados. Oracle y Java son marcas comerciales registradas de Oracle y sus filiales. Todos los demás nombres pueden ser
marcas comerciales de sus respectivos propietarios.
10. Cree una copia de la tabla de empleados y denomínela lesson7_emp;
Una vez creada esta tabla, escriba una sentencia delete correlacionada que suprima
cualquier empleado de la tabla lesson7_employees que también exista en la
tabla job_history.

También podría gustarte