Oracle TCL - Transation Control Language |
Categoria: Oracle | ||||||||
Publicado em 20 de Junho de 2013 | ||||||||
O controle de transações do Oracle (TCL) permite: 1) adiar a gravação das modificações no banco de dados até que o comando COMMIT seja executado; 2) voltar últimas modificações realizadas usando o comando ROLLBACK; 3) criar pontos de controle no banco de dados com o comando SAVEPOINT para que mais tarde seja possível voltar as modificações usando o comando ROLLBACK TO. O escopo do TCL é a sessão atual. Caso a conexão com o banco de dados seja perdida, a sessão atual é finalizada. Um commit implícito ocorre quando uma instrução SQL do tipo DDL (data definition language) seja executada. As instruções do tipo DDL são as que modificam a estrutura do banco de dados: CREATE TABLE, ALTER TABLE, DROP TABLE etc. O DDL é o oposto do DML (data manipulation language), cujas instruções são compostas por comandos que manipulam dados: SELECT, INSERT, UPDATE, DELETE... O uso do TCL é bem simples. Se durante uma sessão deseja-se desfazer as alterações, executa-se o comando ROLLBACK. Neste caso, todas as alterações da sessão atual são desfeitas.
Se deseja-se retornar a um ponto de controle criado, o comando ROOLBACK TO pode ser usado.
Porém, para que o ponto de controle exista, é necessário que antes, um ou mais pontos tivessem sido criados com o comando SAVEPOINT.
Para salvar as modificações realizadas por comandos DML, deve-se executar o comando COMMIT.
|