quarta-feira, 11 de maio de 2011

Savepoints


Segue um exemplo bem simples de um comando que vejo ser muito pouco utilizado no controle de transações, o Savepoints .

insert into empregados (id_empregado,nome,sobrenome,salario) values (1,'Patricia','Moreira',1000) ;

insert into empregados (id_empregado,nome,sobrenome,salario) values (1,'Bruno','Gomes',1000) ;

COMMIT ;

UPDATE EMPREGADOS
SET SALARIO = 5000
WHERE SOBRENOME = 'MOREIRA';

SAVEPOINT BANDA_MOREIRA ;

UPDATE EMPREGADOS
SET SALARIO = 6000
WHERE SOBRENOME = 'GOMES';

SAVEPOINT BANDA_GOMES ;

SELECT SUM(salrio)
FROM empregados;

ROLLBACK TO SAVEPOINT BANDA_GOMES ;

UPDATE EMPREGADOS
SET SALARIO = 4000
WHERE SOBRENOME = 'GOMES' ;

commit ;

Nenhum comentário:

Postar um comentário