Transações implícitas

Quando uma conexão operar em modo de transação implícita, a instância do Mecanismo de banco de dados do SQL Server iniciará automaticamente uma nova transação depois que a transação atual for confirmada ou revertida. Você não faz nada para determinar o início de uma transação; apenas confirma ou reverte cada uma das transações. O modo de transação implícita gera uma cadeia contínua de transações.

Após a configuração do modo de transação implícita em uma conexão, a instância do Mecanismo de Banco de Dados iniciará automaticamente a transação ao executar pela primeira vez cada uma destas instruções:

ALTER TABLE

INSERT

CREATE

OPEN

DELETE

REVOKE

DROP

SELECT

FETCH

TRUNCATE TABLE

GRANT

UPDATE

A transação permanecerá em vigor até que você emita uma instrução COMMIT ou ROLLBACK. Após a confirmação ou reversão da primeira transação, a instância do Mecanismo de Banco de Dados iniciará automaticamente uma nova transação da próxima vez que qualquer instrução for executada pela conexão. A instância continuará a gerar a cadeia de transações implícitas até que modo de transação implícita seja desativado.

O modo de transação implícita é definido tanto pelo uso da instrução SET do Transact-SQL como por meio de funções e métodos API de banco de dados.

ObservaçãoObservação

Em uma sessão MARS (Múltiplos Conjuntos de Resultados Ativos), uma transação implícita Transact-SQL torna-se uma transação com escopo de lote. Se a transação com escopo de lote não for confirmada ou revertida quando o lote se completar, o SQL Server reverterá automaticamente a transação. Para obter mais informações, consulte Controlando transações (Mecanismo de Banco de Dados) e Instruções de transação (Transact-SQL).