17.トランザクション

■トランザクションの開始
BEGIN;
又は、
START TRANSACTION;

■トランザクションの終了
END;
又は、
COMMIT WORK;

■トランザクションの異常終了
ABORT;
又は、
ROLLBACK WORK;

■アクセスモード(READ WRITE / READ ONLY)
トランザクション開始後に指定

SET TRANSACTION READ ONLY;

※ディフォルトはREAD WRITE

■分離レベル
トランザクション開始後に指定

シリアライザブル
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

※リードコミッティド(ディフォルト)
他者が未コミットのトランザクションの影響を受けない。
※シリアライザブル
他者がトランザクションをコミットしても、自分のトランザクション中は影響されない。

■明示的ロック
LOCK [TableName] IN [LockMode];

LOCK [TableName] IN SHARE EXCLUSIVE MODE;

※テーブルに対して、同時に1個のトランザクションだけしか許可しない。


戻る | CGI'sトップへ戻る