Что эквивалентно PL / SQL% NOTFOUND в PL / pgSQL? - PullRequest
2 голосов
/ 06 октября 2010

Все в заголовке.

Я зациклен на курсоре и хотел бы иметь

EXIT WHEN curs%NOTFOUND

, когда строки больше нет, что эквивалентно% NOTFOUND вPostgreSQL?

Редактировать

Или другие атрибуты курсоров% ISOPEN,% EMPTY и т. Д. ...

Ответы [ 2 ]

2 голосов
/ 07 октября 2010

Не могу проверить это прямо сейчас, но что, если вы попробуете это? Проверьте заголовок раздела 37.7.3.2. ВЫХОД по этой ссылке http://www.postgresql.org/docs/8.2/static/plpgsql-control-structures.html

IF NOT FOUND THEN
    EXIT;
END IF;

OR

EXIT WHEN NOT FOUND;
1 голос
/ 06 октября 2010

НАЙДЕН переменная

Неявный курсор

SELECT * INTO myrec FROM emp WHERE empname = myname;
IF NOT FOUND THEN
    RAISE EXCEPTION 'employee % not found', myname;
END IF;

с явным курсором

...   
    LOOP
        FETCH cursor INTO whatever;
        EXIT IF NOT FOUND;
           do something with whatever
    end LOOP;
...