Oracle Apex文本区域将数据存储到表中

dwbf0jvd  于 2022-11-03  发布在  Oracle
关注(0)|答案(1)|浏览(167)

我的页面中有一个文本区域字段和一个提交按钮,该按钮应在提交后通过一个过程(处理-〉提交后-〉过程)将值插入表中:

INSERT INTO my_table (name)
(SELECT RTRIM(COLUMN_VALUE, CHR(13)) 
            FROM   TABLE(apex_string.split(:my_text_area, CHR(10))));

这很好用,但不适用于〉2000行。提交超过X个字符有限制吗?我检查了一下,大数据被正确插入到文本区域字段中。
是否有其他方法可以将数据粘贴到区域中并将其插入到现有表中(无需上载文件)?

bxjv4tth

bxjv4tth1#

在文本区域有字符限制。你必须谷歌一下它是什么(4k还是32k不确定)。在即将到来的版本22.2中将有对页面项的CLOB支持,所以这应该是可能的。
在低于22.2的版本中,您可以使用插件(例如:https://github.com/OraOpenSource/apex-plugin-clob-load)。但是这样你就不能使用页面进程来遍历字符串了,因为插件会把值保存在一个表中。你可能需要在clob保存到的表上的一个触发器或过程中实现你在问题中的逻辑。

相关问题