COMMIT: ESTABLECER COMO PUNTO DE GRABACION/CONFIRMACION TRANSACIONAL. HACE QUE L
OS CAMBIOS SEAN PERMANENTES, BORRAR LOS PUNTOS DE RESCATE Y LIBERA LOS BLOQUEOS ANTES 1. LOS CAMBIO SON VISIBLES PARA TI 2. LOS CAMBIOS NO SON DIFINITIVOS HAY QUE HACER UN ROLLBACK DESPUES 3. CAMBIOS VISIBLES PARA OTROS 4. CAMBIOS SON FINALES ROLLBACK:RETROTRAER TRANSACIOONES, DESHACE LOS CAMBIOS DE UNA TRANSACCION O "RUE DA" HASTA UN SAVEPOINT (PUNTO DE SALVAGUARDA ESPECIFICO) 1. FINALIZA LA TRANSACCION 2. REVIERTE LOS CAMBIOS 3. BORRA LOS PUNTOS DE RESCATE 4. LIBERA LOS BLOQUEOS QUE PASA A UN PUNTO DE SALVAGUARDA 1. NO TERMINA LA TRANSACCION 2. INVIERTE LOS CAMBIOS REALIZADOS DESPUES DELPUNTO DE SALVAGUARDA ESPECIFICADO 3. BORRA LOS PUNTOS DE SALVAGUARDA DESPUES DEL ESPECIFICADO(QUE SE EXCLUYE) 4. LANZA LOS BLOQUEOS DESPUES DEL PUNTO DE SAVEPOINT SAVEPOINT: MARCA UN PUNTO AL QUE MAS QUE MAS TARDE PODAMOS REVERTIR. SON OPCIONA LES Y PUEDEN SER VARIOS. spool d:/nuez.txt set wrap off set linesize 50 set pagesize 30 alter user hr identified by hr account unlock; conn hr usuario:hr clave: hr show user EJEMPLO: aadir un registro a tabla regiones luego verificar resultados y confirme (COMMIT) la transaccion select * from regions order by region_id; insert into regions values(5, 'africa'); ----------"verificar"---------select * from regions order by region_id; ----------"confirmar"---------commit; EJEMPLO: ROLLBACK de transaccion entera: cambie el nombre de la region 4, verifi que los cambios, deshaga la transaccion y verifique el ROLLBACK update regions set region_name = 'Middle East' where region_name = 'Middle East and Africa'; ----------"verificar"---------select * from regions order by region_id; ----------"deshacer la transaccion"---------rollback; ----------"verificar---------select * from regions order by region_id;
EJEMPLO (SAVEPOINT): colocar varios puntos de salvaguarda y luego deshacer hasta
uno de ellos select country_name, country_id, region_id from countries where region_id = 4 or der by country_name; --------------------------colocar puntos de salvaguarda--------------------------------------------update countries set region_id = 5 where country_id ='ZM'; savepoint zambia; update countries set region_id = 5 where country_id ='NG'; savepoint Nigeria; update countries set region_id = 5 where country_id ='ZW'; savepoint Zimbague; update countries set region_id = 5 where country_id ='EG'; savepoint Egipto; ----------"verificacion"-------------select * from regions; select country_name, country_id, region_id from countries where region_id = 4 or der by country_name; select country_name, country_id, region_id from countries where region_id = 5 or der by country_name; ---------hacer un rollback hasta nigeria---------------------rollback to savepoint nigeria; ----------verificar----------select * from regions; spool off