【发布时间】:2018-12-11 10:30:06
【问题描述】:
我有一个数据库表,其列 txt 为 clob。现在我正在尝试在 oracle apex 中显示带有交互式报告的表格。但我得到这个错误:
ora-06502 pl/sql 数字或值错误字符串缓冲区太小
有什么问题?
【问题讨论】:
标签: oracle oracle-apex oracle-apex-5
我有一个数据库表,其列 txt 为 clob。现在我正在尝试在 oracle apex 中显示带有交互式报告的表格。但我得到这个错误:
ora-06502 pl/sql 数字或值错误字符串缓冲区太小
有什么问题?
【问题讨论】:
标签: oracle oracle-apex oracle-apex-5
我找不到证实这一点的文档,但我怀疑 Interactive Report 在幕后将 CLOB 数据加载到 PL/SQL VARCHAR2 变量中,该变量将被限制为 32K 字节。只要您的 CLOB 数据不超过该值就可以,但如果更大,您将收到 ORA-06502 错误。
与其尝试在报告中显示完整的 CLOB 内容(这对于大量内容来说看起来并不好),您可以显示前几百个字符并有一个链接以在模式页面中显示其余部分 (例如)。在那里,您可以读取块中的 CLOB 数据并使用 htp.p 将这些块写入 PL/SQL 区域中。或者,该链接可以将 CLOB 数据下载到文件中。
【讨论】: