Oracle: DBMS_COMPARISON package

Una caratteristica interessante per Oracle 11g è il pacchetto DBMS_COMPARISON che prevedeva di utilizzare i dati di confronto all’interno di due schemi o tra lo schema del database. Per utilizzare DBMS_COMPARISON devi concedere. Se ti sei connesso come SYSDBA hai già avuto la concessione di eseguire. Altri utenti necessitano di autorizzazioni di esecuzione su DBMS_COMPARISON e a quell’utente dovrà essere concesso anche il ruolo di esecuzione del catalogo.

Nota: i set di caratteri del database devono essere gli stessi per i database che contengono gli oggetti del database confrontati.

Affinché tutte le modalità di scansione siano supportate dal pacchetto DBMS_COMPARISON, gli oggetti di database devono avere uno dei seguenti tipi di indici:

o Un indice a colonna singola su una colonna con numero, timestamp, intervallo o tipo di dati DATE

o Un indice composto che include solo colonne numero, timestamp, intervallo o tipo di dati DATE. Ogni colonna nell’indice composto deve avere un vincolo NOT NULL o essere parte della chiave primaria.

Affinché le modalità di scansione CMP_SCAN_MODE_FULL e CMP_SCAN_MODE_CUSTOM siano supportate, gli oggetti del database devono avere uno dei seguenti tipi di indici:

 un indice a colonna singola su una colonna con numero, timestamp, intervallo, DATE, VARCHAR2 o tipo di dati CHAR.

 un indice composto che include solo colonne numeriche, timestamp, intervallo, DATE, VARCHAR2 o CHAR. Ogni colonna nell’indice composto deve avere un vincolo NOT NULL o essere parte della chiave primaria.

Il pacchetto DBMS_COMPARISON può confrontare i seguenti tipi di oggetti di database:
• Tabelle

• Viste a tabella singola

• Viste materializzate

• Sinonimi per tabelle, viste a tabella singola e viste materializzate
Il pacchetto DBMS_COMPARISON supporta tutti i tipi di dati Oracle (VARCHAR2, NVARCHAR2, NUMBER, FLOAT, DATE, TIMESTAMP ecc.) Tranne i seguenti:
LONG
LONG RAW
ROWID
UROWID
CLOB
NCLOB
BLOB
BFILE

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *