読者です 読者をやめる 読者になる 読者になる

misc.log

日常茶飯事とお仕事と

SQL Server Management Studioでの自動コミットをオフにする

とりあえずのメモ。

  1. [ツール]-[オプション]→「クエリ実行」→「SQL Server」→「ANSI」の設定画面を開く。
  2. 「SET IMPLICIT_TRANSACTIONS」(暗黙的なトランザクション)をONにする。

こんだけのようです。暗黙的なトランザクションをON、ということで、何も宣言しなくても勝手に「Begin Transaction」が宣言されたことになります(Select文等の参照は問題ありません)。

これにより、うっかりUpdateを掛けてしまって、気づかないうちに更新、という場合でも「Rollback Transaction」で戻せるようになります。その反面、うっかりトランザクションがかかる命令を実行してしまい、ほかの人からの参照処理などが全部ブロックされて待ち状態に、なんてこともあるので、やはり意識して処理を行う必要はあります。

絵で見てわかるSQL Serverの内部構造 (DB Magazine SELECTION)

絵で見てわかるSQL Serverの内部構造 (DB Magazine SELECTION)