我在DDS中有两个表定义,它们被编译成* FILE对象并填充了数据:
Kunpf:
A UNIQUE
A R KUNTBL
A FIRMA 60A ALWNULL
A KUNR 5S 0B
A KUNID 4S 0B
A K KUNR
A K KUNID
Kunsupf:
A R KUNSUTBL
A KUNID R B REFFLD(KUNID KUN/KUNPF)
A
A SUCHSTR 78A
A K SUCHSTR
A K KUNID
我在交互式SQL(STRSQL
)中使用以下语句:
SELECT DISTINCT FIRMA, KUNR FROM KUN/KUNPF
LEFT JOIN KUN/KUNSUPF ON (KUNPF.KUNID = KUNSUPF.KUNID)
WHERE SUCHSTR LIKE 'Freiburg%'
ORDER BY FIRMA
FOR READ ONLY
每次执行此语句时,都会出现相当长的延迟,直到打开答案屏幕。事先会显示一条消息,指出正在创建临时访问路径。
我如何找出此临时访问路径的创建方式/方式?我的目标是使该访问路径永久化,因此无需在每次查询时都对其进行重建
我搜索了网络(尤其是IBM网站),但发现的大部分是z / OS上的DB2。 F4
中的STRSQL
提示功能无法提供帮助:我正在从MySQL搜索类似EXPLAIN SELECT
的东西。 IBM DB2高级功能和管理 PDF指出存在调试模式,但似乎只能从我不记得拥有的某些(旧)Windows工具中获得。
如果需要的话,我正在使用V4R5。
答案 0 :(得分:3)
在绿色屏幕上查看访问路径...
dspjoblog
访问路径消息位于日志f10 f18 afaik的底部
答案 1 :(得分:1)
v4r5 ???大概20岁了...
对于IBM i,旧的Windows iSeries客户端访问客户端组件的“运行SQL脚本”组件和新的Access Client解决方案(ACS)包含Visual Explain(VE)。
幸运的是,尽管它已添加到v4r5中 http://ibmsystemsmag.com/ibmi/administrator/db2/database-performance-tuning-with-visual-explain/
只需启动iNav,右键单击“数据库”并选择“运行SQL脚本”
在此处粘贴查询,然后单击“ Visual Explain”->“ Run and Explain”
(或相应的按钮)
(可选)在绿屏中。
执行STRDBG进入调试模式,执行F12继续,然后进入STRSQL。然后,Db优化器将向作业日志中输出其他消息,为您提供有关其工作的更多信息。