Partilhar via


Instruções de transação (Transact-SQL)

Uma transação é uma única unidade de trabalho. Se uma transação tiver êxito, todas as modificações de dados feitas durante a transação estarão confirmadas e se tornarão parte permanente do banco de dados. Se uma transação encontrar erros e precisar ser cancelada ou revertida, todas as modificações de dados serão apagadas.

SQL Server opera nos modos de transação a seguir.

  • Transações de confirmação automática
    Cada instrução individual é uma transação.

  • Transações explícitas
    Cada transação é iniciada explicitamente com a instrução BEGIN TRANSACTION e finalizada explicitamente com uma instrução COMMIT ou ROLLBACK.

  • Transações implícitas
    Uma transação nova é iniciada implicitamente quando a transação anterior é concluída, mas cada transação é explicitamente concluída com uma instrução COMMIT ou ROLLBACK.

  • Transações de escopo de lote
    Aplicável apenas a MARS (Conjuntos de Resultados Ativos Múltiplos), uma transação Transact-SQL explícita ou implícita iniciada em uma sessão MARS se torna uma transação de escopo de lote. Uma transação de escopo de lote não confirmada ou revertida, quando um lote é concluído, é revertida automaticamente pelo SQL Server.

Nesta seção

O SQL Server fornece as instruções de transação a seguir.

BEGIN DISTRIBUTED TRANSACTION

ROLLBACK TRANSACTION

BEGIN TRANSACTION

ROLLBACK WORK

COMMIT TRANSACTION

SAVE TRANSACTION

COMMIT WORK

Consulte também

Referência

SET IMPLICIT_TRANSACTIONS (Transact-SQL)

@@TRANCOUNT (Transact-SQL)