oracle需要显式结束事务
2008-04-16 23:42
253 查看
oracle不需要显式的开始事务,事务会在修改数据的第一条语句处开始,但是oracle必须显示结束事务。这个和informix不一样,在informix数据库中,如果不显式声明事务的话,则每条修改的语句都是单独的事务,并马上自动提交。
这是两个数据库在锁和事务实现的机制不一样,在informix中锁是一种很重要的资源,所以事务最好尽快结束;而在oracle中锁的开销很小,甚至是“没有” 开销,所以oracle中系统认为事务应该可以很长。
如果忘记结束事务,不同的环境下会产生不同的缺省行为:如果正常地退出SQL*Plus会话,而没有提交或回滚事务,SQL*Plus就会认为你希望提交前面做的工作,并为你完成提交。另一方面,如果你只是退出一个Pro*C程序,就会发生一个隐式的回滚。
这是两个数据库在锁和事务实现的机制不一样,在informix中锁是一种很重要的资源,所以事务最好尽快结束;而在oracle中锁的开销很小,甚至是“没有” 开销,所以oracle中系统认为事务应该可以很长。
如果忘记结束事务,不同的环境下会产生不同的缺省行为:如果正常地退出SQL*Plus会话,而没有提交或回滚事务,SQL*Plus就会认为你希望提交前面做的工作,并为你完成提交。另一方面,如果你只是退出一个Pro*C程序,就会发生一个隐式的回滚。
相关文章推荐
- Oracle如何结束事务?
- 获取Oracle连接对象代餐构造,select需要提交事务
- Oracle-事务处理开始与结束情况;事务的保存点
- Oracle 事务的開始与结束
- Oracle 事务的开始与结束
- oracle 更新LOBl类型数据的时候需要使用 事务
- Oracle 事务的開始与结束
- ORA-02041: 客户数据库未开始一个事务处理 .NET 连接低版本ORACLE时需要注意的问题
- oracle事务知识点小结
- 关于 Oracle外键列上是否需要索引问题?
- Oracle查询视图需要有基表的查询权限吗?
- 主键/约束/事务/表关系 Oracle
- 关于Oracle AUTONOMOUS TRANSACTION(自治事务)的介绍
- oracle的事务和隔离级别
- Oracle_PL/SQL的基本写法_BEGIN_END块结构及简单的事务实现
- 对ORACLE 已提交的事务进行回滚之详细版和操作版
- oracle数据获取当前自然周,当前周的起始和结束时间
- Oraclee 事务处理以及在c#中使用oracle的事务处理【转载】
- System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本
- Oracle的自治事务