Exemples de commande d’adaptateur JDBC -KEY
Ces exemples d’adaptateur JDBC illustrent l’effet de la commande -KEY dans une fonction GET ainsi que dans une carte de sortie.
Exemple de commande -KEY utilisée dans une fonction GET
Supposons que la table de la base de données soit définie comme suit :
table1(c1 int, c2 varchar(10), c3 date, primary key(c1, c3))
L’adaptateur est utilisé dans la fonction GET suivante :
GET("JDBC", "-URL connection -USER username -PASSWORD password -TABLE table1", inputdata)
Etant donné que la commande -KEY n’est pas spécifiée, l’adaptateur utilise des colonnes c1 et c3 comme clé primaire de table1 et génère une instruction de recherche SELECT comme suit. Le nom complet de la table et les identificateurs entre guillemets sont omis pour plus de clarté.
SELECT c1, c2, c3 FROM table1 WHERE c1 = ? and c3 = ?
L’adaptateur suppose que les données d’entrée sont un enregistrement où les zones correspondent à l’ordre et aux noms des colonnes dans la clé primaire, c’est-à-dire la zone c1 suivie de la zonec3.
Si, en revanche, la ligne de commande de l’adaptateur inclut la commande -KEY suivante :
GET("JDBC", "-URL connection -USER username -PASSWORD password -TABLE table1 -KEY c2,c3", inputdata)
L’adaptateur génère l'instruction de recherche SELECT comme suit. Le nom complet de la table et les identificateurs entre guillemets sont omis pour plus de clarté.
SELECT c1, c2, c3 FROM table1 where c2 = ? and c3 = ?
L’adaptateur suppose que les données d’entrée sont un enregistrement où les zones correspondent à l’ordre et aux noms des colonnes de la commande -KEY, c'est-à-dire la zone c2 suivie de la zone c3.
Exemple de commande -KEY utilisée dans une carte de sortie
Supposons que la table de la base de données soit définie comme suit :
table1(c1 int, c2 varchar(10), c3 date, primary key(c1, c3))
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 -WRITEMODE INSERT_FIRST -TABLE table1
Etant donné que la commande -KEY n’est pas spécifiée, l’adaptateur utilise des colonnes c1 et c3 comme clé primaire de table1 et génère des instructions INSERT et UPDATE comme suit. Le nom complet de la table et les identificateurs entre guillemets sont omis pour plus de clarté.
INSERT INTO table1(c1, c2, c3) VALUES (?, ?, ?)
UPDATE TABLE table1 SET c2 = ? WHERE c1 = ? AND c3 = ?
Si, en revanche, la ligne de commande de la carte de sortie inclut la commande -KEY suivante :
-URL connection -USER username -PASSWORD password -WRITEMODE INSERT_FIRST -TABLE table1 -KEY c2,c3
L’adaptateur génère les instructions suivantes INSERT et UPDATE. Le nom complet de la table et les identificateurs entre guillemets sont omis pour plus de clarté.
INSERT INTO table1(c1, c2, c3) VALUES (?, ?, ?)
UPDATE TABLE table1 SET c1 = ? WHERE c2 = ? AND c3 = ?
Que la commande -KEY soit spécifiée ou non, l’adaptateur suppose que les données d’entrée sont constituées d’enregistrements où les zones qui correspondent à l’ordre et aux noms des colonnes dans la table cible, c’est-à-dire c1, suivi par c2 et par c3.