互联网服务数据库

关于优化器对SQL处理的疑问

大家知不知道db2的优化器会不会对SQL加或者去掉一些锁语句的?比如for update.. with rr .. with ur ..之类的 。
目前我在系统的程序里面使用的SQL(select * from tabName where col1=nn ... with ur)后缀没有带for update,但是在db2top中进行查看(dynamic)的时候,发现语句有时候是select * from tabName where col1=nn ...for update 又有时候是select * from tabName where col1=nn ...(把with ur去掉了) 。
之后发现不仅是使用db2top发现会这样,db2pd和使用数据库的快照函数、视图看也有这种情况。
求解。。。
参与9

8同行回答

UniverseSaeUniverseSae数据库管理员待业
回复 8# lcfeng06    这个问题之前咨询过两次IBM的人,他们可能对这方面了解较少所以也没有个肯定的回复,问题也不了了之了显示全部
回复 8# lcfeng06


   这个问题之前咨询过两次IBM的人,他们可能对这方面了解较少所以也没有个肯定的回复,问题也不了了之了收起
互联网服务 · 2013-12-23
浏览890
lcfeng06lcfeng06软件开发工程师北京先进数通信息技术有限公司
求解收起
软件开发 · 2013-12-08
浏览842
drdb2drdb2系统工程师se
可以试一下event monitor再证实一下。显示全部
可以试一下event monitor再证实一下。收起
互联网服务 · 2011-12-04
浏览822
UniverseSaeUniverseSae数据库管理员待业
回复 3# drdb2    以查询计划来看是ur级别,但是很郁闷就是在db2top和db2pd里面看到的语句跟程序里面的不一样。而我使用两份程序来测试的,一份是c写另外一份是python写的,python写的程序里面的SQL到db2top和db2pd里看是不会变,而c程序的那一块写的程序里面的sql到d...显示全部
回复 3# drdb2


   以查询计划来看是ur级别,但是很郁闷就是在db2top和db2pd里面看到的语句跟程序里面的不一样。而我使用两份程序来测试的,一份是c写另外一份是python写的,python写的程序里面的SQL到db2top和db2pd里看是不会变,而c程序的那一块写的程序里面的sql到db2top和db2pd就会加上for update,还有更奇怪的一件事,就是c程序里面的SQL被db2top和db2pd抓到后,单独拿来运行是会报语法错误的,比如我程序里面写的SQL是:select * from a union select * from b with ur,但是在db2top和db2pd看到的是select * from a union select * from b for update with ur,但是DB2的SQL语法规则里面是如果是查询SQL并且如果SQL中含有两张表或者两张表以上的,是不允许含有for update的,就相当于一个update语句里面不能同时更新两张表的意思。这几点我都很疑惑,不知道前辈是否遇到过我这种问题?收起
互联网服务 · 2011-12-04
浏览855
ninthninth数据库管理员拓维信息系统股份有限公司
回复 3# drdb2      同意。显示全部
回复 3# drdb2


     同意。收起
互联网服务 · 2011-12-01
浏览847
xxzmxxxxzmxx软件开发工程师招行软件中心
回复 3# drdb2    nice way!:lol显示全部
回复 3# drdb2


   nice way!:lol收起
互联网服务 · 2011-11-30
浏览834
UniverseSaeUniverseSae数据库管理员待业
求解噢。。。显示全部
求解噢。。。收起
互联网服务 · 2011-11-30
浏览833
drdb2drdb2系统工程师se
还是该已explain plan 为准。如果你run explain plan for 你的 SQL with ur, 你应该看到 something like:Statement Isolation Level = Uncommitted Read显示全部
还是该已explain plan 为准。
如果你run explain plan for 你的 SQL with ur, 你应该看到 something like:

Statement Isolation Level = Uncommitted Read收起
互联网服务 · 2011-11-30
浏览848

提问者

UniverseSae
数据库管理员待业

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2011-11-30
  • 关注会员:1 人
  • 问题浏览:5631
  • 最近回答:2013-12-23
  • X社区推广