Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
SQL SET PARAMETER
|
SQL SET PARAMETER ( Objekt ; ParamTyp ) | ||||||||
Parameter | Typ | Beschreibung | ||||||
Objekt | 4D Objekt |
![]() |
4D Objekt (Variable, Array oder Feld) | |||||
ParamTyp | Lange Ganzzahl |
![]() |
Parametertyp | |||||
Der Befehl SQL SET PARAMETER ermöglicht, in SQL Anfragen eine 4D Variable, ein Array oder Wert eines Feldes zu verwenden.
Hinweis: Sie können den Namen des zu verwendenden 4D Objekts (Variable, Array oder Feld) im Text der Anfrage auch direkt zwischen << und >> einfügen (siehe Beispiel 1). Weitere Informationen dazu finden Sie im Abschnitt Einführung in SQL Befehle.
Konstante | Typ | Wert | Kommentar |
SQL param in | Lange Ganzzahl | 1 | |
SQL param in out | Lange Ganzzahl | 2 | Ist nur im Rahmen einer SQL Serverprozedur verwendbar (in-out Parameter definiert in Serverprozedur) |
SQL param out | Lange Ganzzahl | 4 | Ist nur im Rahmen einer SQL Serverprozedur verwendbar (in-out Parameter definiert in Serverprozedur) |
Der Wert des 4D Objekts ersetzt das Fragezeichen (?) in der SQL Anfrage (Standardsyntax).
Enthält die Anfrage mehr als ein Fragezeichen, muss der Befehl SQL SET PARAMETER mehrmals aufgerufen werden. Die Werte der 4D Objekte werden in der Anfrage sequentiell zugewiesen, und zwar in Übereinstimmung mit der Ausführungsreihenfolge der Befehle.
Warnung: Dieser Befehl dient zum Verwalten von Parametern, die in den SQL Anfragen übergeben werden. Sie können den Typ SQL param out nicht verwenden, um ein 4D Objekt dem Ergebnis einer SQL Anfrage zuzuordnen. SQL Anfrage-Ergebnisse werden z.B. über den Parameter boundObj des Befehls SQL EXECUTE gefunden (siehe unter Einführung in SQL Befehle). SQL SET PARAMETER dient hauptsächlich zum Setzen von Parametern für die Anfrage (SQL param in); Die Typen SQL param out und SQL param in out sind für die Verwendung im Rahmen von SQL Serverprozeduren reserviert, die Parameter zurückgeben können.
Dieses Beispiel führt eine SQL Anfrage aus, die direkt die zugewiesenen 4D Variablen aufruft:
C_TEXT(MyText)
C_LONGINT(MyLongint)
SQL LOGIN("mysql";"root";"")
SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (<<MyText>>, <<MyLongint>>)"
For(vCounter;1;10)
MyText:="Text"+String(vCounter)
MyLongint:=vCounter
SQL EXECUTE(SQLStmt)
SQL CANCEL LOAD
End for
SQL LOGOUT
Dasselbe Beispiel wie oben, jedoch mit dem Befehl SQL SET PARAMETER:
C_TEXT(MyText)
C_LONGINT(MyLongint)
SQL LOGIN("mysql";"root";"")
SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (?,?)"
For(vCounter;1;10)
MyText:="Text"+String(vCounter)
MyLongint:=vCounter
SQL SET PARAMETER(MyText;SQL param in)
SQL SET PARAMETER(MyLongint;SQL param in)
SQL EXECUTE(SQLStmt)
SQL CANCEL LOAD
End for
SQL LOGOUT
Bei korrekt ausgeführtem Befehl hat die Systemvariable OK den Wert 1, sonst den Wert 0 (Null).
Produkt: 4D
Thema: SQL
Nummer:
823
Erstellt: 4D 2004
4D Programmiersprache ( 4D v20 R7)