COMMIT¶
Confirma uma transação aberta na sessão atual.
- Consulte também:
Sintaxe¶
COMMIT [ WORK ]
Parâmetros¶
WORK
Palavra-chave opcional que proporciona compatibilidade com outros sistemas de banco de dados.
Notas de uso¶
Se duas instruções
COMMIT
em uma linha forem executadas (dentro do mesmo escopo), a segunda será ignorada. Por exemplo, no código a seguir, o segundo COMMIT não tem efeito; não há nenhuma transação em aberto para confirmar.begin; insert into table1 ...; commit; commit; -- Ignored!
As regras podem ser mais complexas se você estiver usando transações autônomas com escopo e procedimentos armazenados.
Exemplos¶
Iniciar uma transação, inserir alguns valores em uma tabela e, em seguida, concluir a transação, confirmando-a:
SELECT COUNT(*) FROM A1; ----------+ COUNT(*) | ----------+ 0 | ----------+ BEGIN NAME T3; SELECT CURRENT_TRANSACTION(); -----------------------+ CURRENT_TRANSACTION() | -----------------------+ 1432071497832 | -----------------------+ INSERT INTO A1 VALUES (1), (2); -------------------------+ number of rows inserted | -------------------------+ 2 | -------------------------+ COMMIT; SELECT CURRENT_TRANSACTION(); -----------------------+ CURRENT_TRANSACTION() | -----------------------+ [NULL] | -----------------------+ SELECT LAST_TRANSACTION(); --------------------+ LAST_TRANSACTION() | --------------------+ 1432071497832 | --------------------+ SELECT COUNT(*) FROM A1; ----------+ COUNT(*) | ----------+ 2 | ----------+