Der als Routine (
routine) bezeichnete Teil der CREATE DBPROC-Anweisung oder CREATE TRIGGER-Anweisung ist die Implementierung der Datenbankprozedur oder des Triggers. Sie besteht aus optionalen Variablendeklarationen und Anweisungen.Syntax
<routine> ::= [<local_variables>] <statement_list>;
<local_variables> ::= VAR <local_variable_list>;
<local_variable_list> ::= <local_variable> | <local_variable_list>; <local_variable>
<local_variable> ::= <variable_name> <data_type>
<variable_name> ::= <identifier>
<statement_list> ::= <statement> | <statement_list> ; <statement>
identifier, data_type, statementErläuterung
Variablen
Die lokalen Variablen der Datenbankprozedur müssen vor der ersten Benutzung explizit unter Angabe eines Datentyps deklariert werden. Es sind nur die
Datentypen BOOLEAN, CHAR[ACTER], DATE, FIXED, FLOAT, INT[EGER], NUMBER, REAL, SMALLINT, TIME, TIMESTAMP und VARCHAR zulässig. Die Variablen können nach ihrer Deklaration beliebig in SQL-Anweisungen und Anweisungen benutzt werden.Jede Datenbankprozedur besitzt implizit die Variablen $RC, $ERRMSG und $COUNT.
Die $RC-Variable liefert nach der Ausführung einer SQL-Anweisung einen numerischen Fehlercode zurück. Der Wert 0 bedeutet, daß die SQL-Anweisung erfolgreich ausgeführt wurde.
Parallel zu $RC liefert die $ERRMSG-Variable eine maximal 80 Zeichen lange Erläuterung des Fehlers.
Die Anzahl der in einer SQL-Anweisung bearbeiteten Zeilen kann der $COUNT-Variablen entnommen werden.
Variablen kann mit Hilfe der Anweisung (
assignment_statement) (siehe statement) ein Wert zugewiesen werden.Restriktionen
Die Anweisungsfolge (
statement_list) darf nicht mehr 255 SQL-Anweisungen enthalten.