|
Die
aus C bekannten Operatoren "++" und "--" existieren in PL/SQL nicht. Diese Operatoren
können aber durchaus hilfreich sein, vor allem, wenn die Inkrementierungs-/Dekrementierungsweite auch noch einstellbar
ist.
Hier ein SQL*PLUS - Skript, in dem diese Operatoren definiert werden und das die Verwendung demonstriert:
DECLARE
l_val NUMBER := 0;
PROCEDURE "++" (p_val IN OUT NOCOPY NUMBER, p_step IN NUMBER DEFAULT 1) IS
BEGIN
p_val := p_val + p_step;
END "++";
PROCEDURE "--" (p_val IN OUT NOCOPY NUMBER, p_step IN NUMBER DEFAULT 1) IS
BEGIN
p_val := p_val - p_step;
END "--";
BEGIN
dbms_output.put_line(TO_CHAR(l_val));
LOOP
"++" (l_val);
dbms_output.put_line(TO_CHAR(l_val));
IF l_val >= 10 THEN
EXIT;
END IF;
END LOOP;
LOOP
"--" (l_val,.5);
dbms_output.put_line(TO_CHAR(l_val));
IF l_val <= 0 THEN
EXIT;
END IF;
END LOOP;
END;
/
|