sqlplus中的提交方式

sqlplus中的提交方式
在我看来sqlplus 中的commit 方式可以分为三种,下面一一讲解。
1、用户控制事务的开始和提交.这也是我们最常用的方式,默认的方式。
SQL> commit;--显式的发出commit,开始事务。
Commit complete.
SQL> insert into t values (1);
1 row created.
SQL> commit;--显式的发出commit,提交事务。
Commit complete.
2、通过autocommit 参数设置事务的自动提交方式。
SQL> show autocommit
autocommit OFF--默认是off,所以在用户执行DML语句的时候,sqlplus不会自动帮我们提交。
SQL> insert into t values (2);
1 row created.
SQL> set autocommit on--开启sqlplus 中的自动提交功能。
SQL> insert into t values (3);
1 row created.
Commit complete.--sqlplus 自动帮我们提交了DML语句。
SQL> select * from t;
         X
----------
         1
         2
         3
SQL> rollback;
Rollback complete.
SQL> select * from t;--在设置了自动提交功能以后,再执行DML语句,前面没有提交的
DML语句也会自动提交。在这里是insert into t values (2);这条语句。
         X
----------
         1
         2
         3
注:不建议在sqlplus 中使用autocommit 功能,这样会削弱用户对事务提交的控制权。
3、退出sqlplus 的时候提交或者回滚事务。
如果使用exit 或者quit 命令友好的提出sqlplus 未提交的事务将会被自动的提交。
如果异常的退出sqlplus 未提交的事务将会被回滚掉,比如直接叉掉sqlplus。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26110315/viewspace-730263/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26110315/viewspace-730263/

你可能感兴趣的:(sqlplus中的提交方式)