Oracle什么时候需要Commit
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle什么时候需要Commit相关的知识,希望对你有一定的参考价值。
写完DML语句(update, insert, delete)后,需要手动COMMIT,如果没有COMMIT,更新的内容会被保存到内存中,而不是提交到数据库中,将不会被其他Session(对话)看见。其他对话看到的是更新前的数据。当用户退出对话时,Oracle才会自动Commit。
而DDL语句(create, alter, drop, truncate),自带COMMIT,所以不需要写COMMIT。因此,DDL操作不能被回滚。
执行完DML语句,如果再执行DDL语句,也会自动COMMIT未被COMMIT的数据。还有其他的SQL命令也有同样的效果:audit, noaudio, comment, grant, revoke, connect, disconnect, exit,quit.
如果打开自动提交,DML操作后也不需要手动提交。 SET AUTOCOMMIT ON
以上是关于Oracle什么时候需要Commit的主要内容,如果未能解决你的问题,请参考以下文章
[Oracle维护工程师手记系列]为什么flashback 的时候既需要 flashback log ,又需要 archive log?