Dentro da sessão de um usuário, para efetivar uma ou mais transações, utiliza-se o comando "commit" e para desfazer uma ou mais transações utiliza-se o comando "rollback".
Vale ressaltar que caso já tenha sido aplicado o commit não é mais possível utilizar o rollback e vice-versa.
Savepoint é o comando utilizado para marcar pontos de divisão lógicos dentro da transação, ou seja, pode-se estabelecer um ponto de salvamento e, posteriormente, desfazer todos os comandos executados após o seu estabelecimento:
Ex:
create table tabela_teste
(col_teste number)
BEGIN
INSERT INTO tabela_teste VALUES (1);
SAVEPOINT meu_savepoint;
INSERT INTO tabela_teste VALUES (2);
ROLLBACK TO SAVEPOINT meu_savepoint;
INSERT INTO tabela_teste VALUES (3);
INSERT INTO tabela_teste VALUES (4);
COMMIT;
END;
SELECT * FROM tabela_teste;
col_teste
------------
1
3
4
Nenhum comentário:
Postar um comentário