저장 프로세스 기본 문법 구조

1. 기본 구조인 CREATE OR REPLACE PROCEDURE 저장 프로세스 이름(매개변수 1 IN NUMBER, 매개변수 2 IN NUMBER) IS 변수 1 INTEGER: =0;변수 2 DATE;BEGIN
END 저장 프로세스 이름
2. SELECT INTO STATEMENT는 select 조회 결과를 변수에 저장합니다. 여러 열을 여러 변수에 동시에 저장할 수 있습니다. 기록이 있어야 합니다. 그렇지 않으면 예외가 발생합니다. (기록이 없으면 NO DATA FOUND) 예: BEGIN SELECT col1,col2 into 변수 1, 변수 2 FROM typestruct where xx.EXCEPTION WHEN NO_DATA_FOUND THEN xxxx; END; …
3. IF 판단 IF VTEST=1 THEN BEGIN do something END; END IF;
4. while 루프 WHILE VTEST=1 LOOP BEGIN XXXX END; END LOOP;
5. 변수 대입 VTEST := 123;
6. for in으로 cursor 사용...IS CURSOR cur IS SELECT * FROM xx;BEGIN FOR cur_result in cur LOOP BEGIN V_SUM :=cur_result.열명 1+curresult.열 이름 2 END;END LOOP; END;
7. 매개변수가 있는 cursor CURSOR CUSER(C_ID NUMBER) IS SELECT NAME FROM USER WHERE TYPEID=C_ID; OPEN C_USER(변수 값);LOOP FETCH C_USER INTO V_NAME; EXIT FETCH C_USER%NOTFOUND; do something END LOOP; CLOSE C_USER;
8. 비정상적인 오류 코드와 오류 메시지
  Oracle    SQLCODE SQLERRM     OTHERS    ,      Oracle          。

OTHERS 프로세서는 비정상 처리 블록의 마지막 비정상 프로세서가 되어야 한다. 다른 비정상 프로세서 처리를 제외한 모든 Oracle 비정상을 포획하는 데 사용되기 때문에 프로그램의 맨 바깥쪽에 OTHERS 프로세서를 사용하면 모든 오류가 검출될 수 있다.내부 이상에서 SQLCODE는 Oracle 오류의 번호를 되돌려주고 SQLERRM은 해당하는 오류 메시지를 되돌려주며 오류 메시지는 먼저 오류 코드를 표시합니다.Oracle의 오류가'ORA-01403:NO DATA FOUND'(ORA-01403:데이터를 찾지 못함)이고 Oracle 오류가'ORA-01403:NO DATA FOUND'일 때 대응하는 SQLCODE는 +100이다.사용자 정의 이상에 대해 SQLCODE는 +1을, SQLERRM은 User-Defined Exception을 되돌려줍니다.Oracle 오류 메시지에는 최대 512바이트의 오류 코드만 포함할 수 있습니다.이상이 트리거되지 않으면 SQLCODE는 0을, SQLERRM은 "ORA-0000:normal,successful completion"을 반환합니다.

EXCEPTION WHEN OTHERS THEN ROLLBACK; c_sqlcode := SQLCODE; c_sqlerrm := SUBSTRB(SQLERRM, 1, 512); o_sts := ‘-1’; c_error := c_process_sts_error; END PROC_SEND_RECEIVE_ERR_INS;

좋은 웹페이지 즐겨찾기