version 2004
SQL FIXER PARAMETRE (objet; typeParam)
Paramètre | Type | Description | |
objet | Objet 4D | Objet 4D à utiliser (variable, tableau ou champ) | |
typeParam | Entier long | Type du paramètre |
Description
La commande SQL FIXER PARAMETRE 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 |
SQL Paramètre entrée | Entier long | 1 |
SQL Paramètre entrée sortie | Entier long | 2 |
SQL Paramètre sortie | Entier long | 4 |
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 FIXER PARAMETRE 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.
Exemples
(1) Cet exemple permet d'exécuter une requête SQL faisant directement appel à des variables 4D associées :
C_TEXTE(MonTexte) C_ENTIER LONG(MonEntierLong) SQL LOGIN("mysql";"root";"") SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (<<MonTexte>>, <<MonEntierLong>>)" Boucle (vCounter;1;10) MonTexte:="Texte"+Chaine(vCounter) MonEntierLong:=vCounter SQL EXECUTER(SQLStmt) Fin de boucle
(2) Même exemple que le précédent, mais en utilisant la commande SQL FIXER PARAMETRE :
C_TEXTE(MonTexte) C_ENTIER LONG(MonEntierLong) SQL LOGIN("mysql";"root";"") SQLStmt:="insert into app_testTable (alpha_field, longint_field) VALUES (?,?)" Boucle (vCounter;1;10) MonTexte:="Texte"+Chaine(vCounter) MonEntierLong:=vCounter SQL FIXER PARAMETRE(MonTexte;SQL Paramètre entrée ) SQL FIXER PARAMETRE(MonEntierLong;SQL Paramètre entrée) SQL EXECUTER(SQLStmt) Fin de boucle
Variables et ensembles système
Si la commande a été correctement exécutée, la variable système OK retourne 1, sinon elle retourne 0.