0
我PROC当入门缺少表达式为:SQL使用REGEXP_SUBSTR
create or replace PROCEDURE SP_TBL_COMPARE_TEST3(
SRC_COLS IN VARCHAR2,
TGT_COLS IN VARCHAR2)
IS
CNT1 NUMBER(5);
SQL_TEXT2 VARCHAR(4000);
BEGIN
SQL_TEXT2:= 'select count(*) from (select regexp_substr('||src_cols||','||'[^,]+'||', +1, level) from dual connect by regexp_substr('||src_cols||','||'[^,]+'||', +1, level) is not null)';
EXECUTE IMMEDIATE SQL_TEXT2 into CNT4;
END
我试图得到该SRC的cols的输入和分离算来,但我得到无效的标识符错误。但列中的输入可用并且准确。
连接到数据库sp_test。 ORA-00936:缺失表达式 ORA-06512:在“SP_TEST.SP_TBL_COMPARE_TEST3”,第19行ORA-06512:在 第13行退出进程。断开与数据库的连接sp_test
谁能告诉我什么是错的?
如果你正在计算列表元素,你可以简化:'从双选择regexp_count('1,2,3,4',',')+ 1;'。当然,确保数据不包含分隔符。 –