Oracle autocommit と exitcommit

公開日:2019-02-12
最終更新:2019-02-12

今までOracleのsqlplusでのautocommitを勘違いしていたことを反省。
exitでsqlplusから出たときにcommitされるか、されないかの設定と思っていました。
exitのコミット設定はexitcommit(Oracle 11g R2から)というものがありました。

もし autocommit off, exitcommit on で設定されている場合、sqlplusからexitで抜けるとコミットされることになります。
また、その設定確認は

show autocommit  
show exitcommit

で確認できます。

まとめると、

auto commit とは

autocommit ON の場合

sqlplusで、update文、insert文、delete文を実行したとき明示的に commit; を実行しなくても即座にコミットされる。

autocommit OFF の場合(デフォルト)

sqlplusで、update文、insert文、delete文を実行したとき明示的に commit; を実行しないとコミットされない。

exit commit とは

autocommit ON の場合(デフォルト)

sqlplusで、update文、insert文、delete文を実行し、commit を実行せずにexitでsqlplusをぬけたとき 自動コミットされる。

autocommit OFFの場合

sqlplusで、update文、insert文、delete文を実行し、commit を実行せずにexitでsqlplusをぬけたとき コミットされず、rollbackされる。

参考

記事が少しでもいいなと思ったらクラップを送ってみよう!
0
+1
@doPWHSj94hxeZGoSの技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする