Exemples de commande d’adaptateur JDBC -BIND
Ces exemples d’adaptateur JDBC illustrent l’effet de la commande -BIND dans une fonction GET ainsi que dans une carte de sortie et dans une instruction de langage de manipulation de données (DML) personnalisée.
Exemple de commande -BIND utilisée dans une fonction GET
L’adaptateur JDBC est utilisé dans une fonction GET de la manière suivante :
GET("JDBC", "-URL connection -USER username -PASSWORD password -QUERY ""SELECT C1, C2, C3 FROM table1 WHERE c4 = ? AND c1 = ?""", inputdata)
Etant donné que la commande -BIND n’est pas spécifiée, l’adaptateur suppose que les données d’entrée sont constituées d’un enregistrement avec deux zones :
- La première zone est mappée au premier paramètre. Il correspond à la colonne
c4de la clause WHERE. - La deuxième zone est mappée au deuxième paramètre. Il correspond à la colonne
c1de la clause WHERE.
Lorsque la fonction GET est définie avec la commande -BIND comme suit :
GET("JDBC", "-URL connection -USER username -PASSWORD password -QUERY ""SELECT C1, C2, C3 FROM table1 WHERE c4 = ? AND c1 = ?"" -BIND ""2 INT32,1 FLOAT64""", inputdata)
L’adaptateur suppose que les données d’entrée sont constituées d’un enregistrement comportant deux zones :
- La première zone est mappée au deuxième paramètre. Il correspond à la colonne
c1de la clause WHERE. - La deuxième zone est mappée au premier paramètre. Il correspond à la colonne
c4de la clause WHERE.
|), suivie de 8 octets représentant le nombre au format binaire).Exemple de commande -BIND utilisée dans une carte de sortie et un DML personnalisé
L’adaptateur JDBC est utilisé dans une carte de sortie avec la ligne de commande de l’adaptateur définie comme suit :
-URL connection -USER username -PASSWORD password -DML "INSERT INTO table1 VALUES (? + 10, TO_TEXT(?), ? + ?)"
Etant donné que la commande -BIND n’est pas spécifiée, l’adaptateur suppose que les données d’entrée sont constituées d’enregistrements avec quatre zones chacun :
- La première zone est mappée au premier paramètre.
- La deuxième zone est mappée au deuxième paramètre.
- La troisième zone est mappée au troisième paramètre.
- La quatrième zone est mappée au quatrième paramètre.
+) utilisé avec certains des paramètres peut ne pas fonctionner avec des valeurs de texte.Supposons à présent que la ligne de commande de l’adaptateur soit définie à l’aide de la commande -BINDcomme suit :
-URL connection -USER username -PASSWORD password -DML "INSERT INTO table1 VALUES (? + 10, TO_TEXT(?), ? + ?)" -BIND "1 INT8,2 DATE,4 INT16,3 INT64"
L’adaptateur suppose que les données d’entrée sont constituées d’enregistrements comportant quatre zones chacun :
- La première zone est mappée au premier paramètre.
- La deuxième zone est mappée au deuxième paramètre.
- La troisième zone est mappée au quatrième paramètre.
- La quatrième zone est mappée au troisième paramètre.
L’adaptateur interprète les zones et lie les paramètres comme suit :
- La première zone est liée au premier paramètre en tant qu'entier 8 bits.
- La deuxième zone est mappée au deuxième paramètre en tant que date.
- La troisième zone est liée au quatrième paramètre en tant qu'entier 16 bits.
- La quatrième zone est liée au troisième paramètre en tant qu’entier 64 bits.