Transações: BEGIN, COMMIT e ROLLBACK
Uma transação agrupa alterações. COMMIT as mantém; ROLLBACK as desfaz.
Sintaxe
BEGIN; … COMMIT;BEGIN; … ROLLBACK;
- Sem BEGIN, cada instrução é confirmada por conta própria.
Exemplo
BEGIN; DELETE FROM order_items WHERE order_id = 12; ROLLBACK;
A exclusão é desfeita, então a tabela fica inalterada depois.
Tabelas usadas: order_items. Experimente em uma lição abaixo.
Erros comuns
- Uma transação deixada aberta, sem COMMIT ou ROLLBACK, mantém seus bloqueios. Sempre a finalize.