Oracle PL/SQL之自定义函数的读一致性
来源:互联网 发布:sqlserver 数据库管理 编辑:程序博客网 时间:2024/05/21 02:22
读一致性即确保查询的结果与发起查询的时刻的数据一致,不管在此查询期间其他事务有没有更改数据。
首先假设我们有如下函数用来根据部门id求该部门的总薪资:
然后我们开个session(s1),执行如下查询(q1):
在q1执行的过程中,我们又开个新的session(s2),执行更新命令并提交:
接着回到s1,看q1的执行结果:
我们发现sum(sal)和sum2(deptno)的结果不一致。
当我们将自定义函数应用于sql语句中,而该sql又需要执行很长时间,并且在这段时间中恰好又有其他dml会更改该sql中的某些表时,这种不一致就会体现出来。
关于如何避免这种不一致,可以使用SET TRANSACTION READ ONLY,详细内容可参看我下面的这篇文章:
Oracle PL/SQL之SET TRANSACTION READ ONLY(事务隔离性)
http://blog.csdn.net/t0nsha/archive/2011/06/24/6566517.aspx
- Oracle PL/SQL之自定义函数的读一致性
- Oracle PL/SQL之GROUPING 函数
- oracle pl/sql 函数
- oracle pl/sql 函数
- oracle 之 pl/sql
- Oracle之pl/sql
- Oracle之PL/SQL的变量小结
- Oracle之PL/SQL的变量小结
- Oracle之PL/SQL的变量小结
- Oracle之PL/SQL的变量小结
- PL/SQL中的自定义函数
- ORACLE的PL/SQL
- oracle pl/sql split函数
- oracle pl/sql split函数
- oracle pl/sql语言初级教程之过程和函数
- Oracle PL/SQL语言初级教程之过程和函数
- oracle学习笔记之三(函数:Pl/sql)
- oracle数据库PL/SQL之过程和函数
- 知了知了互联网的发展--Google推出语音,图像等搜索新功能
- 技术管理中的几个问题
- 探索式测试中的几种误区
- c# 2.0 到3.5新特性
- 使用反射+泛型方法来处理Linq的修改
- Oracle PL/SQL之自定义函数的读一致性
- win7+linux+vmware
- tomcat目录访问权限问题
- Oracle物化视图2
- u盘启动ubuntu系统
- 6/24/2011 5:15:13 PM
- 如何学习c++?请各位指点指点
- 习惯决定命运
- css和js中资源路径问题