커서 속성

커서 속성 (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

더 알아보기 (Learn more)