Kursory

Autor: Marcin Kasiński
21.01.2011 13:24:00 +0200

Atrybuty kursorów

%FOUND

Atrybut ma wartość NULL po otworzeniu kursora, a przed przeczytaniem jego pierwszego wiersza. , TRUE - jeśli ostatnie pobranie wiersza zakończyło się powodzeniem, FALSE - jeśli nie powiodło się ostatnie pobranie wiersza.

Przykład:

IF Coursor1%FOUND THEN ...

%ISOPEN

Zwraca wartość logiczną określającą, czy kursor jest otwarty.

%NOTFOUND

Logiczne przeciwieństwo %FOUND.

Przykład:

LOOP
FETCH c1 INTo variable;
EXIT WHEN c1%NOTFOUND;
...
END LOOP;

%ROWCOUNT

Określa ilość dotychczas pobranych rekordów poprzez klauzulę FETCH. Jeśli dany kursor nie jest otworzony generuje wyjątek INVALID_COURSOR.

Przykład:

IF Coursor1%ROWCOUNT>10 THEN ...

Systemowy kursor SQL

Kursor ten jest tworzony przez system Oracle do obsługi zapytań wygenerowanych w bloku PL/SQL.

%FOUND

Atrybut ten określa, czy jakiekolwiek rekordy tabeli wzięły udział w ostatnim zapytaniu SQL typu INSERT, UPDATE lub DELETE.

Przykład:

...
DELETE from tab1 WHERE col1=value
IF SQL%FOUND THEN ...

%NOTFOUND

Logiczne przeciwieństwo %FOUND.

%ROWCOUNT

Określa ile rekordów wzięło udział w ostatnim poleceniu typy INSERT, UPDATE lub DELETE.


powrót
Zachęcam do przedstawienia swoich uwag i opinii w polu komentarzy.

Komentarze

Dodaj Komentarz