J'interroge un Iseries à partir d'ODBC dans mon application et j'essaie d'effectuer une requête qui renvoie les résultats de 2 tables. J'ai besoin de rejoindre les tables mais les tables sont dans différentes bibliothèques. Je ne veux pas utiliser d'identifiants de bibliothèque dans ma requête car mes bibliothèques changent à mesure que je me déplace de dev> qa> prod. Cependant, je suis certain que ces tables ne seront que dans ces bibliothèques et qu'il n'y aura pas de doublons dans d'autres bibliothèques. Existe-t-il un moyen de le faire sans spécifier la bibliothèque Iseries?Problème de requête inter-bibliothèque AS400/DB2
En Essense, je veux ceci:
select DISTINCT GIDNBR, VSL00100.GRNAME
FROM **QACOMMON**.CMPGRID2 CMPGRID2 INNER JOIN **QAVISLIVE**.VSL00100 VSL00100 ON VSL00100.GRNO=CMPGRID2.GIDNBR AND
VSL00100.GRSUB=CMPGRID2.GIDSUB AND
VSL00100.GRLOC=CMPGRID2.GIDLOC AND
VSL00100.GRPOOL=CMPGRID2.GIDPOL
pour ressembler à ceci:
select DISTINCT GIDNBR, VSL00100.GRNAME
FROM CMPGRID2 CMPGRID2 INNER JOIN VSL00100 VSL00100
ON
VSL00100.GRNO=CMPGRID2.GIDNBR AND
VSL00100.GRSUB=CMPGRID2.GIDSUB AND
VSL00100.GRLOC=CMPGRID2.GIDLOC AND
VSL00100.GRPOOL=CMPGRID2.GIDPOL
Toutes les idées?
Juste un commentaire mineur - Nommer une bibliothèque avec la lettre initiale "Q" la supprime d'être sauvé dans le cadre d'une opération de sauvegarde 'SAVLIB * ALLUSR '. Assurez-vous que toutes les sauvegardes obtiennent les bonnes données. – user2338816