4D v16.3

SQL SET PARAMETER

Accueil

 
4D v16.3
SQL
SQL SET PARAMETER

SQL SET PARAMETER 


 

SQL SET PARAMETER ( objet ; typeParam ) 
Paramètre Type   Description
objet  Objet 4D in Objet 4D à utiliser (variable, tableau ou champ)
typeParam  Entier long in Type du paramètre

La commande SQL SET PARAMETER permet d’utiliser la valeur d’une variable, d’un tableau ou d’un champ 4D dans les requêtes SQL.

Note : Il est également possible d’insérer directement le nom d'un objet 4D à utiliser (variable, tableau ou champ) entre les caractères << et >> dans le texte de la requête (cf. exemple 1). Pour plus d'informations sur ce point, reportez-vous à la section Présentation des commandes du thème SQL.

  • Passez dans le paramètre objet l’objet 4D (variable, tableau ou champ) à utiliser dans la requête.
  • Passez dans le paramètre typeParam le type SQL du paramètre. Vous pouvez passer une valeur ou utiliser l’une des constantes suivantes, placées dans le thème "SQL" :
    Constante Type Valeur Comment
    SQL param in Entier long 1
    SQL param in out Entier long 2 Utilisable uniquement dans le contexte d'une procédure stockée SQL (paramètre entrée-sortie défini dans la procédure stockée)
    SQL param out Entier long 4 Utilisable uniquement dans le contexte d'une procédure stockée SQL (paramètre sortie défini dans la procédure stockée)

La valeur de l’objet 4D est substituée au caractère ? dans la requête SQL (syntaxe standard). Si la requête comporte plusieurs caractères ?, plusieurs appels à SQL SET PARAMETER seront nécessaires. Les valeurs des objets 4D seront affectées séquentiellement dans la requête, dans l’ordre d’exécution des commandes.

Attention : Cette commande permet de manipuler les paramètres passés à la requête SQL. Il n'est pas possible d'utiliser le type SQL param out pour associer un objet 4D au résultat d'une requête SQL. Le résultat d'une requête SQL est récupéré par exemple via le paramètre objetLié de la commande SQL EXECUTE (cf. section Présentation des commandes du thème SQL). La commande SQL SET PARAMETER est généralement utilisée pour définir des paramètres passés à la requête (SQL param in) ; les types SQL param out et SQL param in out sont réservés à une utilisation dans le contexte de procédures stockées SQL pouvant retourner des paramètres.

Cet exemple permet d’exécuter une requête SQL faisant directement appel à des variables 4D associées :

 C_TEXT(MonTexte)
 C_LONGINT(MonEntierLong)
 
 SQL LOGIN("mysql";"root";"")
 SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (<<MonTexte>>, <<MonEntierLong>>)"
 For(vCounter;1;10)
    MonTexte:="Texte"+String(vCounter)
    MonEntierLong:=vCounter
    SQL EXECUTE(SQLStmt)
    SQL CANCEL LOAD
 End for
 SQL LOGOUT

Même exemple que le précédent, mais en utilisant la commande SQL SET PARAMETER :

 C_TEXT(MonTexte)
 C_LONGINT(MonEntierLong)
 
 SQL LOGIN("mysql";"root";"")
 SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (?,?)"
 For(vCounter;1;10)
    MonTexte:="Texte"+String(vCounter)
    MonEntierLong:=vCounter
    SQL SET PARAMETER(MonTexte;SQL param in)
    SQL SET PARAMETER(MonEntierLong;SQL param in)
    SQL EXECUTE(SQLStmt)
    SQL CANCEL LOAD
 End for
 SQL LOGOUT

Si la commande a été correctement exécutée, la variable système OK retourne 1, sinon elle retourne 0.

 
PROPRIÉTÉS 

Produit : 4D
Thème : SQL
Numéro : 823

Cette commande modifie la variable système OK

 
HISTORIQUE 

Créé : 4D 2004

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)