Vous créez une vue de jointure de deux tables à partir de la même source de données qui ont deux colonnes avec le type de données VARCHAR. Toutefois, la vue de jointure n'est pas repoussée sur la source de données distante.
Symptômes
Deux tables ont deux colonnes avec le type de données VARCHAR sur votre source de données distante. Vous exécutez une requête pour créer une vue de jointure de ces tables. Toutefois, la vue de jointure n'est pas créée ou repoussée sur la source de données distante en raison de la présence de deux colonnes avec le type de données VARCHAR.
Résolution du problème
- Récupère le
cid
à partir de la tabledvsys.rdb_connections
.select cid, url from dvsys.rdb_connections;
- Exécutez la commande suivante pour spécifier l'option VARCHAR2_COMPAT , en remplaçant
<cid>
par la valeur obtenue à l'étape 1.alter server qplex options(set <cid>@varchar2_compat 'Y')
- Si vous recevez unSQL1828NLorsque vous exécutez l'étape 2, exécutez la commande suivante en remplaçant
<cid>
par la valeur obtenue à l'étape 1.alter server qplex options(add <cid>@varchar2_compat 'Y')
L'option VARCHAR2_COMPAT permet de définir l'attribut de serveur VARCHAR2_COMPAT en externe, mais elle ne peut pas être utilisée pour résoudre tous les problèmes d'insertion que vous pouvez rencontrer lorsque vous tentez de joindre des tables. L'option VARCHAR2_COMPAT peut être utile dans certains cas uniquement.
- Si les prédicats de jointure utilisent principalement des comparaisons de chaînes, vous devez définir l'option VARCHAR2_COMPAT sur Y pour insérer des vues de jointure sur des sources de données distants.
- Pour comparer des valeurs NULL et des chaînes vides, vous devez définir l'option VARCHAR2_COMPAT sur N.
- Si votre source de données distante est Big SQL, Oracle ou Db2®, qui est défini en mode ORA, vous pouvez définir l'option VARCHAR2_COMPAT sur O pour les blancs de fin.