Spezielle Regeln für parametrisierte Anweisungen
-
. Benannte und Positionsparameter können nicht in einer Abfrage gemischt werden
-
Jeder Parameter muss im Anweisungstext verwendet werden.
Um diese Regel zu lockern, kann benannten Parametern das Schlüsselwort
EXCESS
vorangestellt werden, um anzuzeigen, dass der Parameter im Anweisungstext fehlen kann.Diese Option ist nützlich für dynamisch generierte Anweisungen, die bestimmte Parameter bedingt einschließen oder ausschließen. -
Wenn die Anweisung Parameter hat, müssen diese beim Aufruf von
EXECUTE STATEMENT
in Klammern eingeschlossen werden, egal ob sie direkt als Strings, als Variablennamen oder als Ausdrücke kommen -
Jedem benannten Parameter muss ein Doppelpunkt (‘
:
’) in der Anweisungszeichenfolge selbst vorangestellt werden, jedoch nicht, wenn dem Parameter ein Wert zugewiesen wird -
Positionsparametern müssen ihre Werte in der gleichen Reihenfolge zugewiesen werden, in der sie im Abfragetext erscheinen
-
Der Zuweisungsoperator für Parameter ist der spezielle Operator “
:=
”, ähnlich dem Zuweisungsoperator in Pascal -
Jeder benannte Parameter kann in der Anweisung mehrmals verwendet werden, sein Wert darf jedoch nur einmal zugewiesen werden
-
Bei Positionsparametern muss die Anzahl der zugewiesenen Werte genau mit der Anzahl der Parameterplatzhalter (Fragezeichen) in der Anweisung übereinstimmen
-
Ein benannter Parameter im Anweisungstext kann nur ein regulärer Bezeichner sein (er darf kein Bezeichner in Anführungszeichen sein)