Risoluzione di identificativi

I dati XML che devono essere caricati in un database di destinazione devono contenere un identificativo per gli elementi XML per cui tale identificativo č necessario. Per creare o posizionare gli identificativi per le voci di catalogo nel documento XML, richiamare il comando ID Resolve.

L'ID Resolver risolve soltanto gli identificativi per una tabella principale. Una tabella principale č una tabella elencata nella tabella KEYS o nella tabella SUBKEYS. Se č necessario risolvere gli identificativi per una tabella che non si trova in KEYS o SUBKEYS, aggiungere la tabella alla tabella SUBKEYS prima di eseguire l'ID Resolver.

Metodi

Il comando ID Resolve consente di scegliere il metodo load, update o mixed per l'elaborazione del file di immissione. 

Metodo load: Il metodo load per l'ID viene utilizzato per creare nuovi identificativi per i record caricati nel database. Con questo metodo, vengono creati nuovi identificativi per i record. Il seguente esempio viene utilizzato per creare identificativi per dati nuovi:

Windows NT Windows 2000 AIX Solaris Linux
idresgen -dbname db -dbuser user -dbpwd pwd -infile input.xml
-outfile output.xml -method load -customizer customizer

Nota:  Il metodo load č quello predefinito.

iSeries
QWEBCOMM/RESWCSID DATABASE(DATABASE_NAME) SCHEMA(MALL)
INSTROOT(/QIBM/UserData/WebCommerce/instances/mser) PASSWD(mypassword)
INFILE(input.xml) OUTFILE(output.xml) METHOD(*LOAD)

Metodo update: Se viene specificato il metodo update per l'ID Resolver, i record nel file di immissione devono essere giā presenti nel database. L'ID Resolver localizza gli identificativi nel database. Se un record non esiste nel database, l'ID Resolver non sarā in grado di risolvere l'identificativo per questo record ed indicherā che si č verificato un errore. Il seguente esempio viene utilizzato per localizzare identificativi per che giā sono presenti nel database:

Windows NT Windows 2000 AIX Solaris Linux
idresgen -dbname db -dbuser user -dbpwd pwd -infile input.xml
-outfile output.xml -method update -customizer customizer

iSeries
QWEBCOMM/RESWCSID DATABASE(DATABASE_NAME) SCHEMA(MALL)
INSTROOT(/QIBM/UserData/WebCommerce/instances/mser) PASSWD(mypassword)
INFILE(input.xml) OUTFILE(output.xml) METHOD(*UPD)

Metodo mixed: Se il file dei dati di immissione contiene record che giā sono presenti nel database e altri record che sono completamente nuovi, l'ID Resolver deve essere eseguito utilizzando il metodo mixed. Con questo metodo, l'ID Resolver crea nuovi identificativi per i record soltanto se non esistono nel database. Altrimenti, nel database vengono rilevati gli identificativi giā esistenti. Il seguente esempio viene utilizzato per creare identificativi per i dati nuovi e per localizzare gli identificativi per idati che sono giā presenti nel database:

Windows NT Windows 2000 AIX Solaris Linux
idresgen -dbname db -dbuser user -dbpwd pwd -infile input.xml
-outfile output.xml -method mixed -customizer customizer

iSeries
QWEBCOMM/RESWCSID DATABASE(DATABASE_NAME) SCHEMA(MALL)
INSTROOT(/QIBM/UserData/WebCommerce/instances/mser) PASSWD(mypassword)
INFILE(input.xml) OUTFILE(output.xml) METHOD(*MIX)

Suggerimenti per la risoluzione dei problemi

Se si verifica un errore durante la risoluzione degli identificativi, fare riferimento alla seguente tabella:

Errore Metodo utilizzato Possibile causa Possibile soluzione
Unresolved
chiave principale
Any L'ID Resolver non risolve la chiave principale (identificativo) in una tabella che non č specificata in entrambe le tabelle KEYS o SUBKEYS. Aggiungere il nome della tabella per la quale si deve risolvere la chiave principale nella tabella SUBKEYS prima dell'esecuzione dell'ID Resolver.
Aggiorna La chiave principale viene risolta dall'interrogazione del database. La query del database viene generata utilizzando le informazioni del file properties o l'indice univoco per le tabelle date. La voce del file properties ha la prioritā. Verificare che le informazioni relative all'indice univoco presenti nel file di immissione siano corrette.

E' anche possibile creare o modificare la voce appropriata nel file properties per generare la query di database appropriata per risolvere la chiave principale.

Unresolved
chiave esterna
Any L'ID Resolver non risolve la chiave esterna in una tabella dove i riferimenti esterni sono nelle tabelle che non sono specificate in entrambe le tabelle KEYS o SUBKEYS. Aggiungere il nome della tabella a cui si č fatto riferimento nella tabella SUBKEYS prima dell'esecuzione dell'ID Resolver.

In aggiunta, verificare che la relazione della chiave esterna esista nello schema del database.

Una chiave esterna viene risolta utilizzando l'alias interno o interrogando il database. L'interrogazione del database viene effettuata solo se l'alias interno non riesce a risolvere la chiave esterna. L'alias interno viene creato utilizzando la chiave principale e la voce del file properties. Verificare che i valori dell'alias interno utilizzati come origine e destinazione del file di immissione siano corretti.
La query del database viene generata utilizzando le informazioni del file properties o l'indice univoco per le tabelle date. La voce del file properties ha la prioritā. Verificare che le informazioni relative all'indice univoco presenti nel file di immissione siano corrette.

E' anche possibile creare o modificare la voce appropriata nel file properties per generare la query di database appropriata per risolvere la chiave principale.

Argomenti correlati

Attivitā correlate

Riferimenti correlati

IBM copyright