DB2 存储过程中如何使用 Optimization Profile
2010-09-03 00:00:00 来源:WEB开发网核心提示: 该 SQL 语句的输出包括两列,一列为存储过程编译后对应的数据库内部包的名字,DB2 存储过程中如何使用 Optimization Profile(8),一列为 SQL 语句的内部表示形式,执行脚本后,可以查看 DB2 Info Center 中相关的章节,这里,可以得到如下输出:图 5.查询存
该 SQL 语句的输出包括两列,一列为存储过程编译后对应的数据库内部包的名字,一列为 SQL 语句的内部表示形式。执行脚本后,可以得到如下输出:
图 5.查询存储过程中 SQL 语句内部表示形式
查看原图(大图)
我们可以看到,输出参数 EMP_NUM 被替换成了 :HV00009 :HI00009,输入参数 DEPT_NO 被替换成了 :HV00008 :HI00008,这和当初定义在存储过程中的 SQL 语句形式上有很大区别,而这种形式才是 DB2 编译运行时使用的具体形式,也是我们最终定义在 STMTKEY 中的形式。另外需要注意查询结果的第一列是该存储过程编译后在数据库内对应的包名(这里为 P1513856),我们后面需要用该包名来查看该存储过程的执行计划。
查看默认的执行计划
为了验证后续的优化概要文件会修改 DB2 默认的执行计划,我们需要先得到该 SQL 语句当前的执行计划。在这里我们使用 db2exfmt 工具,其中的 -n 选项对应我们在上述查询中得到的包名。有关该工具对应选项的详细信息,可以查看 DB2 Info Center 中相关的章节。这里,我们把原始的执行计划保存在文件 orig_plan.out 中。
清单 9.查看 SQL 语句原始执行计划的脚本
db2exfmt -d sample -e db2inst1 -g -l -n 'P1513856' -s db2inst1
-o orig_plan.out -w -1 -# 0 -v %
图 6.原始执行计划
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››db2诊断系列之---定位锁等待问题
- ››db2 命令选项解释
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 基础: 表空间和缓冲池
- ››DB2 XML 编程,第 1 部分: 理解 XML 数据模型
- ››DB2 pureScale 实战
更多精彩
赞助商链接