오라클 pl/sql exception ? 0 1 687

by 메시 [PL/SQL] [2019.01.21 22:41:16]


최근에 업무적으로 오라클 pl/sql 다루기 시작했는데요. 

 

아래 ​insert into test 문에서 오류가 나면 commit문은 실행이 안되고

바로 EXCEPTION 문으로 빠져 rollback 되는건가요?

insert문이 정상일경우만 commit문이 실행되는건가요?

 

insert문이 실행되고 fetch가 있을때 commit문이 실행되게 해야하는건지

궁금하네요.

 

 

CREATE OR REPLACE PROCEDURE ​test

(

p_val1 NUMBER,

r_err_no NUMBER,

r_err_msg VARCHAR,

)

IS

BEGIN

 

​insert into test(t_num, t_name, t_date)

values ( T_NUM, T_NAME, T_DATE);

COMMIT;

EXCEPTION WHEN OTHERS THEN

  DBMS_OUTPUT.PUT_LINE( T_NUM || ' ' || T_NAME ||');

ROLLBACK;

END;

/

 

by 야신 [2019.01.22 06:34:44]

페치가 없어도 실행되는데

테이블의 컬럼 제약조건이나 숫자가 들어가야 하는데 문자가 들어간 경우, 자리수가 큰 값이 들어간 경우 드등 이뢀때 에러를 발생시키게 됩니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입