面临错误:-101 IBM DB2 SQL Run 中的语句太长或太复杂

Facing Error : -101 THE STATEMENT IS TOO LONG OR TOO COMPLEX in IBM DB2 SQL Run

提问人:Prashant Kumar Singh 提问时间:11/13/2023 更新时间:11/13/2023 访问量:38

问:

介绍:我在我的一个项目中从事 DB2 数据库的工作。在其中一个数据库中,执行 SQL 的作业正在运行。

问题:在过去的几天里,此作业一直失败,并显示以下错误代码。

-101 语句太长或太复杂

描述:

  1. 查询优化为类 7。

  2. 查询由具有复杂联接和多个联接的 select 语句组成。此 select 语句用于将数据插入到表中。 前任:

插入table_name(column_name_1、column_name_2等)

SELECT * from table_name_1 t1 join table_name_2 t2 on t1.col_1=t2.col_2;

但是,联接要冗长和复杂得多。此外,还涉及大量列。

  1. 此查询在系统中运行了很长时间,但从未失败。此查询也从未更改过。

  2. 源表中的记录计数数也与日俱增,因为应用程序即将停用。

解决方案尝试:

  1. 我试图在互联网上查找此错误并得到了此链接

基于此,我将 STMTHEAP 值加倍,查询运行,但第二天再次失败。我进一步将 STMTHEAP 值加倍,然后它运行了,但第二天又失败了。这种情况一直持续到今天。

  1. 我还尝试将 STMTHEAP 值设置为自动,但结果与上面相同。

我使用的其他资源:

https://www.ibm.com/docs/en/db2/11.1?topic=parameters-stmtheap-statement-heap-size

https://www.ibm.com/docs/en/ias?topic=parameters-sortheap-sort-heap-size

问:你们中有人可以帮我解决这个问题吗?

SQL DB2 堆内存 监视 查询引擎

评论

1赞 MichaelTiefenbacher 11/14/2023
请共享操作系统 - 一个链接指向 Db2 for z/OS,另一个链接指向 Db2 LUW...
1赞 mao 11/14/2023
如果查询以前已成功运行,但未更改,则你的工作是发现更改的内容(然后考虑回退该更改)。例如,有关 Db2-server 环境的某些内容已更改,版本、修订包、补丁、配置、操作环境、与 db2-server 共享相同 RAM 的其他程序或组件已更改,或者模式已更改(视图/索引/触发器/约束)。
0赞 data_henrik 11/15/2023
诊断日志中的任何内容?

答: 暂无答案