Práctica 9-1: Manipulación de Datos
El departamento de recursos humanos desea que cree sentencias SQL para insertar, actualizar y suprimir datos de los empleados. Como prototipo, utilizará la tabla MY_EMPLOYEE , antes de proporcionar las sentencias al departamento.Nota: para todas las sentencias DML, utilice el icono Run Script (o pulse [F5]) para ejecutar la consulta. De esta forma, ve los mensajes de comentarios en la página con separadores Script Output. Para consultas SELECT , siga utilizando el icono Execute Statement o pulse [F9] para obtener la salida con formato en la página con separadores Results.
Inserte los datos en la tabla MY_EMPLOYEE .
1) Ejecute la sentencia en el script lab_09_01.sql para crear la tabla MY_EMPLOYEE utilizada en esta práctica.
create table my_employee (
id number(4) primary key,
last_name varchar2(25),
first_name varchar2(25),
userid varchar2(8),
salary number(9,2)
);
2) Describa la estructura de la tabla MY_EMPLOYEE para identificar los nombres de las columnas.
describe my_employee;
3) Cree una sentencia INSERT para agregar la primera fila de datos a la tabla MY_EMPLOYEE a partir de los siguientes datos de ejemplo. No muestre la lista de columnas en la cláusula INSERT . No introduzca aún todas las filas.
insert into my_employee values (1,'Patel', 'Ralph', 'rpatel', 895);
4) Rellene la tabla MY_EMPLOYEE con la segunda fila de datos de ejemplo de la lista anterior. En esta ocasión, muestre explícitamente la lista de columnas en la cláusula INSERT .
insert into my_employee (id,last_name,first_name, userid, salary) values (2,'Dancs', 'Betty', 'bdancs', 860);
5) Confirme la adición a la tabla.
commit;
6) Escriba una sentencia INSERT en un archivo de script reutilizable para cargar las filas restantes en la tabla MY_EMPLOYEE . El script se debe solicitar para todas las columnas ( ID , LAST_NAME , FIRST_NAME , USERID y SALARY ). Guarde este script en un archivo lab_09_06.sql .
insert into my_employee values (&identificador, '&cognon', '&nom', '&identificador_usuari', &salari);
7) Rellene la tabla con las dos siguientes filas de ejemplo mostradas en el paso 3 mediante la ejecución de la sentencia INSERT en el script que ha creado.
insert into my_employee values (&identificador, '&cognon', '&nom', '&identificador_usuari', &salari);
8) Confirme las adiciones a la tabla.
select * from my_employee;
9) Convierta las adiciones de datos en permanentes.
commit;
Actualice y suprima datos de la tabla MY_EMPLOYEE .
10) Cambie el apellido del empleado 3 a Drexler.update my_employee set last_name='Drexler'where id=3;
11) Cambie el salario a 1.000 dólares para todos los empleados con un salario inferior a 900.
update my employee set salary=1000 where salary<900;
12) Verifique los cambios en la tabla.
select * from my_employee;
13) Suprima Betty Dancs de la tabla MY_EMPLOYEE .
delete from my_employee where id=2;
14) Confirme los cambios en la tabla.
select * from my_employee;
15) Confirme todos los cambios pendientes.
commit;
Controle la transacción de datos a la tabla MY_EMPLOYEE .
16) Rellene la tabla con la última fila de datos de ejemplo mostrada en el paso 3 mediante las sentencias del script que ha creado en el paso 6. Ejecute las sentencias en el script.Ejecutar script 6 con la fila id=5
17) Confirme la adición a la tabla.
commit;
18) Marque un punto intermedio en el procesamiento de la transacción.
En este punto hay que tener cuidado, si tienes autocommit en on dará error. En mi caso estoy utilizandoSQL-developer y lo tuve que poner off:
Tools > Preferences > Database > Advanced > Autocommit
savepoint A;
19) Suprima todas las filas de la tabla MY_EMPLOYEE .
delete from my_employee;
20) Confirme que la tabla está vacía.
select * from my_employee;
21) Deseche la operación DELETE más reciente sin desechar la operación INSERT anterior.
rollback to A;
22) Confirme que la nueva fila esté intacta.
select * from my-employee where id=5;
23) Convierta la adición de datos en permanente.
commit;
Muchas grascias!! La verdad me ayudo mucho a guiarme en mis ejercicios. Saludos
ResponderEliminaresta bien
ResponderEliminar