프로시저를 작성할 때
특정 테이블의 상태에 따라 작업을 할 지 말 지 결정된다면
아래와 같이 데이터를 조회하여 count(*)를 q_cnt 변수에 저장한 뒤
IF문을 통해 값이 없으면 LEAVE 명령어로 프로시저를 종료한다
종료할 프로시저명은 첫 줄 BEGIN 앞에 써둔 PROC_BODY 와 일치시킨다
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 | PROC_BODY: BEGIN DECLARE q_cnt INT; -- 데이터 조회 SELECT COUNT(*) INTO q_cnt FROM table WHERE a = 1; -- 데이터가 없으면 프로시저 종료 IF q_cnt = 0 THEN LEAVE PROC_BODY; END IF; -- 데이터가 있으면 이후 작업 실행 INSERT INTO table_2(a,b,c) VALUES (1,2,3); END | cs |
프로시저를 작성할 때
특정 테이블의 상태에 따라 작업을 할 지 말 지 결정된다면
아래와 같이 데이터를 조회하여 count(*)를 q_cnt 변수에 저장한 뒤
IF문을 통해 값이 없으면 LEAVE 명령어로 프로시저를 종료한다
종료할 프로시저명은 첫 줄 BEGIN 앞에 써둔 PROC_BODY 와 일치시킨다