このエントリーをはてなブックマークに追加


PostgreSQLでオートコミットをオフにする方法

PostgreSQLのデフォルトでは自動コミットとなっています。
psqlコマンド等でメンテナンスや調査をしていた場合、自動コミットでは心配なので、
毎回、begin; するのは面倒ですよね。
自動コミット(auto commit)をオフにする方法を以下に記します。

関連記事

AUTOCOMMIT

AUTOCOMMIT変数にonまたはoffを指定すれば、自動コミットの有効・無効を設定できます。
以下のコマンドで、AUTOCOMMITの値を確認することができます。

\echo :AUTOCOMMIT
01.png
 

自動コミットをオフにする

以下の構文により、AUTOCOMMITをオフにすることができます。

\set AUTOCOMMIT off

以下、実行例です。

02.png

自動コミットをオンにする

以下の構文により、AUTOCOMMITをオンにすることができます。

\set AUTOCOMMIT on

以下、実行例です。

03.png

psql起動時に設定する

psql起動時にAUTOCOMMITの設定を反映したい場合は、~/.psqlrcに記述すれば可能になります。
毎回起動時に設定する必要ななくなります。
シェルであれば、以下のコマンドを実行することにより、AUTOCOMMITをoffにできます。

echo '\set AUTOCOMMIT off' >> ~/.psqlrc

上記のコマンドを実行すると、以下のように最終行に追記されます。(ファイルがない場合は新規に作成されます。)

sakura@cygwin ~$ echo '\set AUTOCOMMIT off' >> ~/.psqlrc

sakura@cygwin ~$ cat ~/.psqlrc
\pset pager off
\pset null '(null)'
\set COMP_KEYWORD_CASE upper
\set AUTOCOMMIT off

以上、PostgreSQLでAUTOCOMMITをon/offする設定方法でした。


添付ファイル: file01.png 785件 [詳細] file02.png 1532件 [詳細] file03.png 1917件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-01-17 (火) 12:41:48