Red Baron: PL/SQL Cursor

Beitrag lesen

Hallo,

kann man in PL/SQL Cursor bzw. eine Variable, die als Datentyp einer Tabelle definiert wurde auf NULL abfragen?

Werde doch etwas genauer, was Du damit meinst? Etwas Beispielcode von Deiner Prozedur vielleicht + Erklärung was Du machen willst? Normale Variablen fragst Du in PL/SQL einfach per IF ... IS NULL THEN ab - und in SELECT-Statements halt per WHERE ... IS NULL. Aber ich bin mir nicht sicher, ob Dir das jetzt hier an der Stelle konkret weiterhilft, dafür habe ich zu wenig Informationen.

Achja, beachte bitte, dass Oracle Leerstrings auch als NULL ansieht, obwohl das gegen ANSI SQL 92 verstößt (und so gut wie jede andere Datenbank das dagegen richtig macht).

Viele Grüße,
Christian

Ich hole mit mit einem Cursor mehrere Datensätze aus einer Tabelle:
DECLARE

CURSOR cur IS
  SELECT *
  FROM test;
var test%ROWTYPE;

Es kann aber sein, dass in der Tabelle noch kein Datensatz vorhanden ist, deßhalb will ich den Cursor auf NULL abfragen:

BEGIN
IF cur IS NULL THEN...

Das geht aber nicht. Also habe ich mir gedacht, ich versuche den ersten Eintrag (den es aber nicht gibt!) aus dem Cursor zu lesen und dann die Variable 'test' auf NULL abzufragen. Das geht aber auch nicht.