我正在尝试用json_object之类的大型表来构建JSON。有多个嵌套级别,例如,我在一个json_arrayagg中使用json_object。所以我很快就达到了返回数据类型的极限。默认的数据类型是varchar2(4000)。当然,我可以通过指定返回关键字将其扩展到varchar2(32767),甚至是clob。但是clob只受json_objectagg和json_arrayagg的支持,即使扩展到32767也不可能在每种情况下都起作用。尽管我指定了ORA-40459,但我仍然得到了varchar2(32767)。
是否有办法扩大这一限制?像这样的限制条件下,这些函数似乎不太有用!
或者还有其他方法来执行这个任务?在我的例子中,问题是我必须导出大量的数据。因此,不可能在客户端执行此任务。也许可以在PL/SQL中这样做,但我不确定性能。我将不得不使用像pljson这样的第三方库,它需要安装。
发布于 2019-02-01 12:33:42
也许这有点太晚了。我也有同样的问题,我通过添加
JSON_OBJECT(...
将VARCHAR2(5000) )返回为JSON_STRING
在结束偏执之前的json object语句的末尾。
您还可以添加一个返回的CLOB,以确保
https://stackoverflow.com/questions/50625479
复制相似问题