Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Gespeicherte Prozeduren und Trigger » Prozeduren, Trigger und Batches verwenden » Der Aufbau von Prozeduren und Triggern

 

Parameter an Prozeduren übergeben

Sie können die Standardwerte der Parameter von gespeicherten Prozeduren mit einer von zwei Formen der CALL-Anweisung nutzen.

Wenn die optionalen Parameter am Ende der Argumentliste in der Anweisung CREATE PROCEDURE stehen, können sie in der CALL-Anweisung weggelassen werden. Als Beispiel sehen wir uns eine Prozedur mit drei INOUT-Parametern an:

CREATE PROCEDURE SampleProcedure( 
       INOUT var1 INT DEFAULT 1,
                     INOUT var2 int DEFAULT 2,
                     INOUT var3 int DEFAULT 3 )
...

In diesem Beispiel wird vorausgesetzt, dass die aufrufende Umgebung drei Variablen eingerichtet hat, die die an die Prozedur übergebenen Werte enthalten:

CREATE VARIABLE V1 INT;
CREATE VARIABLE V2 INT;
CREATE VARIABLE V3 INT;

Die Prozedur "SampleProcedure" kann wie folgt aufgerufen werden, indem nur der erste Parameter übergeben wird:

CALL SampleProcedure( V1 );

In diesem Fall werden die Standardwerte für var2 und var3 verwendet.

Eine flexiblere Methode für den Aufruf von Prozeduren mit optionalen Argumenten ist die Übergabe der Parameter nach Namen. Die Prozedur "SampleProcedure" kann wie folgt aufgerufen werden:

CALL SampleProcedure( var1 = V1, var3 = V3 );

Die zweite Möglichkeit:

CALL SampleProcedure( var3 = V3, var1 = V1 );