FUNCTION F_JH_REFRESHNEWSPROC() RETURN NVARCHAR2 IS
CLOB_PROC_TXT NVARCHAR2(8000);
V_INSERTSQL NVARCHAR2(500);
V_SELECTSQL NVARCHAR2(500);
CURSOR CURSOR_LOOP IS
SELECT INSERT_PART.SQL_APP INSERTSQL, --SQL 插入部分
SELECT_PART.SQL_APP SELECTSQL --SQL 数据处理部分
FROM AUD_JH_FUN_LIST AS INSERT_PART
LEFT OUTER JOIN AUD_JH_FUN_LIST AS SELECT_PART ON INSERT_PART.FUN_LIST_NO =
SELECT_PART.FUN_LIST_NO
AND SELECT_PART.IS_EXCUTE = '1' -- 存在数据处理SQL
WHERE INSERT_PART.IS_EXCUTE = '2'; -- 存在数据插入SQL
BEGIN
--**主程序块 ******************************--
CLOB_PROC_TXT := 'CREATE OR REPLACE PROCEDURE SP_JH_check_data(NVARCHAR2_Org_No IN NVARCHAR2 ,DATE_StartDate IN DATE,DATE_EndDate IN DATE ) IS BEGIN'; --存储过程头部
OPEN CURSOR_LOOP;
LOOP
FETCH CURSOR_LOOP
INTO V_INSERTSQL, V_SELECTSQL;
CLOB_PROC_TXT := CLOB_PROC_TXT || '; COMMIT; ' || V_INSERTSQL ||
V_SELECTSQL; --循环加入数据处理语句
EXIT WHEN REC.COUNT = 0;
END LOOP;
CLOSE CURSOR_LOOP;
CLOB_PROC_TXT := CLOB_PROC_TXT || 'COMMIT; END SP_JH_check_data;'; --存储过程尾部
RETURN CLOB_PROC_TXT;
END F_JH_REFRESHNEWSPROC;
4 个解决方案
#1
贴出错误信息。
在函数里动态创建存储过程?
是何目的?
在函数里动态创建存储过程?
是何目的?
#2
在函数里动态创建存储过程,我在plsql developer 里头写的,写完提示不能解析,不知道哪里错了
#3
包的头文件
CREATE OR REPLACE PACKAGE JH_TEST IS
FUNCTION F_JH_REFRESHNEWSPROC() RETURN CLOB;
END JH_TEST;
CREATE OR REPLACE PACKAGE JH_TEST IS
FUNCTION F_JH_REFRESHNEWSPROC() RETURN CLOB;
END JH_TEST;
#4
顶一下
oracle QQ群:54775466
期待您的一起探讨
欢迎爱好者入群学习
oracle QQ群:54775466
期待您的一起探讨
欢迎爱好者入群学习
#1
贴出错误信息。
在函数里动态创建存储过程?
是何目的?
在函数里动态创建存储过程?
是何目的?
#2
在函数里动态创建存储过程,我在plsql developer 里头写的,写完提示不能解析,不知道哪里错了
#3
包的头文件
CREATE OR REPLACE PACKAGE JH_TEST IS
FUNCTION F_JH_REFRESHNEWSPROC() RETURN CLOB;
END JH_TEST;
CREATE OR REPLACE PACKAGE JH_TEST IS
FUNCTION F_JH_REFRESHNEWSPROC() RETURN CLOB;
END JH_TEST;
#4
顶一下
oracle QQ群:54775466
期待您的一起探讨
欢迎爱好者入群学习
oracle QQ群:54775466
期待您的一起探讨
欢迎爱好者入群学习