4D v16.3

SQL SET PARAMETER

Home

 
4D v16.3
SQL
SQL SET PARAMETER

SQL SET PARAMETER 


 

SQL SET PARAMETER ( Objekt ; ParamTyp ) 
Parameter Typ   Beschreibung
Objekt  4D Objekt in 4D Objekt (Variable, Array oder Feld)
ParamTyp  Lange Ganzzahl in 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.

  • Im Parameter Objekt übergeben Sie das gewünschte 4D Objekt (Variable, Array oder Feld) für die Anfrage.
  • Im Parameter ParamTyp übergeben Sie den Parameter vom Typ SQL. Sie können einen Wert übergeben oder eine der folgenden Konstanten unter dem Thema SQL verwenden:
    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).

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: SQL
Nummer: 823

Dieser Befehl ändert die Systemvariable OK

 
GESCHICHTE 

Erstellt: 4D 2004

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)