Impossibile spingere verso il basso le viste di join su origini dati remote in Data Virtualization
Si crea una vista di join di due tabelle provenienti dalla stessa origine dati che hanno due colonne con il tipo di dati VARCHAR. Tuttavia, la vista di join non viene trasferita alla fonte dati remota.
Sintomi
Nella fonte dati remota sono presenti due tabelle con due colonne di tipo VARCHAR. Esegui una query per creare una vista join di queste tabelle. Tuttavia, la vista di join non viene creata né trasferita sulla fonte dati remota a causa delle due colonne con tipo di dati VARCHAR.
Risoluzione del problema
- Prendi il
ciddal tavolodvsys.rdb_connections.select cid, url from dvsys.rdb_connections; - Esegui il seguente comando per specificare VARCHAR2_COMPAT l'opzione, sostituendo
<cid>con il valore ottenuto dal passaggio 1.alter server qplex options(set <cid>@varchar2_compat 'Y') - Se ricevi unSQL1828Nmessaggio di errore quando si esegue il passaggio 2, eseguire il comando seguente, sostituendo
<cid>con il valore ottenuto dal passaggio 1.alter server qplex options(add <cid>@varchar2_compat 'Y')
L'opzione VARCHAR2_COMPAT offre un modo per impostare l'attributo VARCHAR2_COMPAT server esternamente, ma non può essere utilizzata per risolvere tutti i problemi di push-down che potresti incontrare quando provi a unire le tabelle. L'opzione VARCHAR2_COMPAT potrebbe essere utile solo in alcuni casi.
- Se i predicati di join utilizzano principalmente confronti di stringhe, è necessario impostare VARCHAR2_COMPAT l'opzione su Y per trasferire le viste di join su origini dati remote.
- Per confrontare valori NULL e stringhe vuote, è necessario impostare VARCHAR2_COMPAT l'opzione su N.
- Se la fonte dati remota è Big SQL, Oracle o Db2, impostata in modalità ORA, è possibile impostare VARCHAR2_COMPAT l'opzione su Y per gli spazi finali.