프로시저 cursor 사용 예 정보
MySQL 프로시저 cursor 사용 예본문
전편 에서 테스트용 디비에 "제목"을 넣어줄 컬럼 하나 추가
자유게시판에서 gildong2 라는 아이디로 데이터를 찾아서 "키" 와 "제목" 을
테스트용 디비에 인서트 하고 삭제 해라 라는 프로시저 입니다.
아래는 파라미터.
아래는 프로시저 본문 내용
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
|
BEGIN
DECLARE endOfRow BOOLEAN DEFAULT FALSE; -- 루프의 끝 여부
DECLARE aa INTEGER; -- wr_id 와 매치
DECLARE bb VARCHAR(255); -- wr_subject 와 매치
-- cursor1 을 만들어 줍니다. 복수개의 데이터를 담음.
DECLARE CURSOR1 CURSOR FOR
SELECT wr_id , wr_subject FROM g5_write_free
WHERE MB_ID = Param1
;
DECLARE CONTINUE HANDLER
FOR NOT FOUND SET endOfRow = TRUE;
OPEN CURSOR1; -- 커서1 을 열기
integrity_loop : LOOP
-- idCursor 에서 값을 추출 aa , bb 에 넣고 있음
FETCH CURSOR1 INTO aa , bb ;
IF endOfRow THEN
LEAVE integrity_loop; -- 마지막 행이면 루프 밖으로 나감.
END IF;
INSERT INTO g5_test_proc1( DATA1 , TEXT1 ) VALUES( aa , bb );
DELETE FROM g5_write_free WHERE wr_id = aa;
END LOOP integrity_loop;
CLOSE CURSOR1; -- 커서1 을 닫기
END
|
cs |
프로시저 실행
CALL TEST_PROC2( 'gildong2' , @RESULT);
추천
0
0
댓글 0개