预计数是 SQL0572N 程序包 "NULLID.SQLC2O28" 无效

Pre-Count is SQL0572N Package "NULLID.SQLC2O28" is inoperative

偶尔,当我尝试 运行 存储过程加载数据时,在我的开发环境中,我收到此错误:

预计数是 SQL0572N 包“NULLID.SQLC2O28”无效。 SQLSTATE=51028

有人知道如何解决这个问题吗?

谢谢

当包所依赖的对象被更改或删除时,包将变得无效。在开发环境中,对象被丢弃、更改、重新创建等可能很常见。

文档link

您可以重新绑定相关的特定包,或者 运行 一个工具来重新绑定所有无效的包。在你的情况下,如果你能够使用命令行连接到合适的权限 db2 rebind package NULLID.SQLC2O28,但请记住,可能有多个包不起作用,因此 db2bind 命令可能会有帮助, doclink.

这个link有个例子(不同包号),同理

auth-ID(即您连接到数据库的用户)需要在数据库中具有适当的授权和权限,才能成功完成重新绑定操作,否则它们将抛出权限异常。

根据 DB2 v11.1 Bind File and Package Name List link,SQLC2O28 包是 Db2 11.1.4.4 客户端的 db2clpcs.bnd 绑定文件的一部分。
这个绑定文件列在 db2ubind.lst 列表中,如果你想 运行 使用你的客户端的一些命令/实用程序,它应该从你的 11.1.4.4 客户端绑定到数据库。

如果其中一些包无法使用,最好不要手动绑定它们,因为这可能是一段漫长的旅程,但请有适当授权的人从您的(或来自一些相同版本和修复包的另一个)客户端到数据库:

db2 connect to mydb ...
db2 "bind .../@db2ubind.lst blocking all grant public"