【发布时间】:2020-06-28 01:44:29
【问题描述】:
我在 oracle proc 中传递 ID。 ID 可以是 1000 个。目前它能够处理大约 600 个 ID,如果我通过超过 600 个 ID - 我收到 ORA-01460 未实现或不合理的转换请求。 ID 是 varchar2 数据类型,我如何处理 varchar2 中的 1000 个 Id,或者处理此类问题的最佳策略是什么。任何指导/建议将不胜感激。这可以使用 CLOB 数据类型解决吗?
//this is how I am processing Id's
create or replace procedure Emp(
emp_id in varchar2
)
//passing those id's in CTE before passing to subquery
WITH
EMP_LIST AS(
select regexp_substr(emp_id,'[^,]+', 1, level) from dual
connect by level <= LENGTH(regexp_substr(emp_id, '[^,]+'))+1
)
【问题讨论】:
标签: sql oracle stored-procedures sqldatatypes