Transact-SQL 暗黙のトランザクション
DB-Library アプリケーションと Transact-SQL スクリプトは、Transact-SQL ステートメントの SET IMPLICIT_TRANSACTIONS ON を使用して暗黙のトランザクション モードを開始します。暗黙のトランザクション モードをオフにするには、SET IMPLICIT_TRANSACTIONS OFF ステートメントを使用します。トランザクションを終了するには、COMMIT TRANSACTION、COMMIT WORK、ROLLBACK TRANSACTION、または ROLLBACK WORK のいずれかのステートメントを使用します。
SET QUOTED_IDENTIFIER OFF;
GO
SET NOCOUNT OFF;
GO
USE AdventureWorks;
GO
CREATE TABLE ImplicitTran
(Cola int PRIMARY KEY,
Colb char(3) NOT NULL);
GO
SET IMPLICIT_TRANSACTIONS ON;
GO
-- First implicit transaction started by an INSERT statement.
INSERT INTO ImplicitTran VALUES (1, 'aaa');
GO
INSERT INTO ImplicitTran VALUES (2, 'bbb');
GO
-- Commit first transaction.
COMMIT TRANSACTION;
GO
-- Second implicit transaction started by a SELECT statement.
SELECT COUNT(*) FROM ImplicitTran;
GO
INSERT INTO ImplicitTran VALUES (3, 'ccc');
GO
SELECT * FROM ImplicitTran;
GO
-- Commit second transaction.
COMMIT TRANSACTION;
GO
SET IMPLICIT_TRANSACTIONS OFF;
GO