1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | PROCEDURE DELETELOC ( P_LAYTKY IN VARCHAR2 ,P_LBUILD IN VARCHAR2 ,P_LSTORY IN VARCHAR2 ,P_WAREKY IN VARCHAR2 ,P_STOKKY IN VARCHAR2 ,P_ZONEKY IN VARCHAR2 ,L_RESULT OUT WOSRECCURTYP) IS V_ALTZONE VARCHAR2(3000); V_ERRNUM VARCHAR (255); V_ERRMSG VARCHAR (255); BEGIN BEGIN UPDATE LAYOI SET INDBZL = 'D' WHERE LAYTKY = P_LAYTKY AND BLOCTY NOT IN ( '30' , '39' ); COMMIT ; UPDATE LAYOI SET INDBZL = 'D' WHERE LAYTKY = P_LAYTKY AND LBLOCK IN ( SELECT LBLOCK FROM LOCBL WHERE STOKKY = P_STOKKY AND WAREKY = P_WAREKY --AND ZONEKY IN (V_ALTZONE) AND ZONEKY IN ( SELECT * FROM table (split( REPLACE (P_ZONEKY, '::' , '' ), ',' ) ) ) ); COMMIT ; OPEN L_RESULT for SELECT '0' FROM DUAL; EXCEPTION WHEN OTHERS THEN ROLLBACK ; OPEN L_RESULT for SELECT '-1' FROM DUAL; V_ERRNUM := SQLCODE; V_ERRMSG := substr(SQLERRM, 1, 255); raise_application_error(-20002, v_errmsg); END ; END DELETELOC; |
위 프로시저에서 , 프로시저에 값이 제대로 들어가는데 , 11G 에서는 에러가 없이 잘 돌아가는데
9I 에서는 ORA-22905 내포 되지 않은 테이블 항목 으로 부터 행 을 가지고 올 수 없습니다
에러를 떨구고 프로시저가 돌아가지 않는데.. 고수님들 조언 부탁 드립니다.