免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1867 | 回复: 4
打印 上一主题 下一主题

!!!向高手请教,关于SQL PACKAGE访问计划的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-05 11:06 |只看该作者 |倒序浏览
400里的SQLPACKAGE包含了SQL语句和访问计划,但再实际执行的时候如果400根据表的统计信息发现,访问计划并不是最优的,那么400会不会不用SQL package里的访问计划,而直接用根据最新统计信息重新生成的较优的访问计划呢?
请高手指点指点!!!

论坛徽章:
0
2 [报告]
发表于 2009-03-05 15:08 |只看该作者
居然没人回复?自己查了查自己回复一下了:
For an i5/OS® program that contains static embedded SQL, an access plan is initially created at compile time. Again, since optimization uses the host variable values to determine an optimal plan, the compile time plan may be rebuilt the first time the query is opened.
看来虽然是固化的访问计划,但主要还是取决于第一次查询的情况,有可能不用sql package里的访问计划的。

论坛徽章:
0
3 [报告]
发表于 2009-03-06 09:00 |只看该作者
好像又不对,这里的嵌入SQL指的应该是400本机上的程序,而400本机上的E-SQL程序是不生成sqlpackage的

论坛徽章:
0
4 [报告]
发表于 2009-03-06 09:14 |只看该作者
按逻辑上分析应该是访问计划是不变的,否则干嘛要保存进去,不就和动态语句一样了嘛,每次调度还要判断访问计划。所以逻辑上还是觉得像固化的,但不知道系统有没什么特殊的地方。

论坛徽章:
0
5 [报告]
发表于 2009-03-06 09:41 |只看该作者
大体上明白了,SQL PACKAGE里的执行计划是固化的,除非对涉及的表和视图有索引的增加等变化,这时系统会自动重新生成一个access plan,数据内容的变化是不影响的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP