首页 > 解决方案 > Getting NULL Value in Stored Procedure TEXT Column

问题描述

Below Query, I am using to get the SP definition but in TEXT column I am getting as NULL Value in IBM DATA Studio but I am able to CALL the SP.

SELECT PROCNAME, TEXT FROM SYSCAT.PROCEDURES WHERE PROCNAME LIKE '%USP_ABC%'

Please Help

标签: db2

解决方案


您已确认 syscat.procedures.language 是 SQL,并且您的查询工具能够显示文本的 substr()。

解决方法取决于感兴趣行的长度(文本):

SELECT PROCNAME, substr(TEXT,1, 1024) FROM SYSCAT.PROCEDURES WHERE PROCNAME LIKE '%USP_ABC%'

您可能需要根据文本的长度和您的配置调整 substr 提取的长度。例如 substr(TEXT, 1, 2048 ) 或您的查询工具可以处理的必要长度的更高值。

您可以使用感兴趣行的 LENGTH(TEXT) 找到文本列的长度。

您还可以将 CLOB 转换为 char 或 varchar,使其长度符合它们的限制以及您拥有的任何查询工具限制。另一种选择是使用可以与 CLOB一起使用的不同查询工具。


推荐阅读