oracle 标准游标格式
来源:互联网 发布:2015年网络红歌 编辑:程序博客网 时间:2024/05/11 01:28
CREATE OR REPLACE PROCEDURE JL_GSYYJC_CBS_INS_SP(P_CBS_CBRQ IN DATE,P_IOPOINT_ID IN NUMBER) IS V_B_ID NUMBER; V_CNT NUMBER; CURSOR V_RS_B IS SELECT B_ID FROM JC_B_TB WHERE B_WZBM = P_IOPOINT_ID;BEGIN SAVEPOINT V_SP_00000; OPEN V_RS_B; LOOP FETCH V_RS_B INTO V_B_ID; EXIT WHEN V_RS_B%NOTFOUND; SELECT COUNT(*) INTO V_CNT FROM JL_CBS_TB WHERE B_ID = V_B_ID AND CBS_CBRQ = P_CBS_CBRQ; IF V_CNT = 0 THEN INSERT INTO JL_CBS_TB (CBS_BM, B_ID, CBS_YSRQ, CBS_CBRQ) VALUES (SEQJL_CBS.NEXTVAL, V_B_ID, P_CBS_CBRQ, P_CBS_CBRQ); END IF; END LOOP; CLOSE V_RS_B; COMMIT;EXCEPTION WHEN OTHERS THEN ROLLBACK TO SAVEPOINT V_SP_00000; RAISE_APPLICATION_ERROR(-20001, 'STS_ERROR: JL_GSYYJC_CBS_INS_SP ERROR HAPENED' || SQLERRM);END JL_GSYYJC_CBS_INS_SP;