커서 속성
커서 속성 (Cursor Attributes)
커서 속성은 현재 커서의 상태를 알려 주는 보조 정보예요. 커서가 열려 있는지, 마지막 FETCH에서 행을 가져왔는지 등을 %ISOPEN, %FOUND, %NOTFOUND로 확인할 수 있습니다.
출처: 문서
본문
커서 속성은 현재 커서의 상태에 대한 정보를 얻을 수 있게 해 줍니다.
구문:
cursor_name%ISOPEN
cursor_name%FOUND
cursor_name%NOTFOUND
- cursor_name 은 선언된 커서 또는 커서 변수의 이름입니다.
%ISOPEN 속성
%ISOPEN 은 커서가 열려 있으면 true 를, 그렇지 않으면 false 를 반환합니다.
%FOUND 속성
%FOUND 는 커서에서 첫 번째 fetch 전에는 NULL을, 마지막 fetch가 행을 반환했으면 true, 그렇지 않으면 false 를 반환합니다.
%NOTFOUND 속성
%NOTFOUND 는 커서에서 첫 번째 fetch 전에는 NULL을, 마지막 fetch가 행을 반환했으면 false, 그렇지 않으면 true 를 반환합니다.
예제:
DECLARE
CURSOR c1 IS SELECT name FROM users LIMIT 1;
v1 VARCHAR(30);
BEGIN
OPEN c1;
IF c1%ISOPEN THEN
DBMS_OUTPUT.PUT_LINE('Cursor open');
END IF;
FETCH c1 INTO v1;
IF c1%FOUND THEN
DBMS_OUTPUT.PUT_LINE('Row found');
END IF;
FETCH c1 INTO v1;
IF c1%NOTFOUND THEN
DBMS_OUTPUT.PUT_LINE('Row not found');
END IF;
CLOSE c1;
END;
호환성: Oracle