1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VSCodeからSQL Serverへつなぐ時にオートコミットを外す方法

Posted at

やりたいこと

  • VSCodeの拡張機能(mssql)で、SQL Serverへ接続する際に、オートコミットの設定を切りたい
    • 間違ってSQLを流してしまった際に簡単にロールバックできるようにしておきたい

やり方

前提:拡張機能(mssql)のインストール

これです。

使い方についてはこちらの記事が分かりやすかったです。

オートコミットを外す

command + ,(Windowsなら、ctrl + ,)で、VSCodeの設定を開きます。もしくは、VSCodeのウィンドウ左下からも開けます。

左下

設定タブを開けたら、「mssql transaction」とでも検索して、「Implicit Transactions」のチェックボックスをチェックしてください。(デフォルトだとチェックがついていない状態です。)

implicit transaction

IMPLICIT_TRANSACTIONSとは

SQL Serverのドキュメントの解説を見ると、

ON の場合、システムは "暗黙" トランザクション モードです。 つまり、@@TRANCOUNT = 0 の場合に、次の Transact-SQL ステートメントのいずれかが新しいトランザクションを開始します。 これは、最初に実行される目に見えない BEGIN TRANSACTION と同じです。

とあります。

BEGIN TRANSACTIONが最初に実行されるというていで考えればよく、SQLの締めでは、COMMITROLLBACKを明示的に行うことができます。要は、オートコミットを解除しているのとおんなじことですね。

まとめ

これでオートコミットを外せました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?