
Query di dati di relazione
Se si desidera eseguire la query dei dati di relazione, è possibile utilizzare il gestore relazioni o le viste in un database.
Utilizzo del gestore relazioni per interrogare i dati di relazione
Il gestore relazioni supporta le seguenti opzioni per interrogare i dati dell'istanza associati a una relazione:- Tutti
- Ottenere un elenco di tutte le istanze nella relazione. È possibile scegliere di visualizzare tutti i dati delle istanze di relazione attive o inattive, o entrambi.
- Per ID
- Acquisire le istanze di relazione nell'intervallo degli identificatori di istanza iniziale e finale. Se si lascia un campo vuoto, la query restituisce solo la singola istanza. La query restituirà tutti i ruoli delle istanze rilevate.
- Per proprietà
- Acquisire le istanze di relazioni in base a valori di proprietà specifici.
- Per ruolo
- Acquisire le istanze di relazione in base al nome di un ruolo, al valore dell'attributo chiave, all'intervallo di date durante il quale il ruolo è stato creato o modificato o al valore della proprietà specifica.
Per ulteriori informazioni sull'interrogazione dei dati di relazione con il gestore relazioni, consultare la guida in linea del gestore relazioni.
Utilizzo delle viste database per eseguire query dei dati di relazione
È possibile utilizzare le viste del database per interrogare direttamente i dati di relazioni memorizzati nel database. Quando si crea una nuova tabella database di relazioni, viene creata automaticamente una vista SQL corrispondente. Queste viste sono essenzialmente incapsulamenti dei dati di relazioni memorizzati in tabelle di database. È possibile utilizzare queste viste per popolare, interrogare i dati di relazione o entrambi:
- utilizzo delle istruzioni SQL con un client DB (ad esempio, con il centro comandi DB2® )
- utilizzo di JDBC per eseguire istruzioni SQL con un programma Java™
Le viste SQL del database delle relazioni vengono create in base ai dati contenuti in tabelle ubicate altrove nell'origine dati. La vista esisterà anche quando la tabella del database è vuota. Ogni vista ha il nome univoco che segue questa convenzione: "V_" +relationship_display_name+ "_"nome_visualizzazione_ruolo+ "_" +uuid (notare che le variabili sono concatenate utilizzando un carattere di sottolineatura "_"). Entrambi i nomi di visualizzazione sono limitati a 20 caratteri alfanumerici, mentre l'uuid è un numero generato dalla combinazione di entrambi i nomi di visualizzazione. Di conseguenza, ogni nome vista deve essere univoco all'interno di un'origine dati. Un esempio di questa convenzione di denominazione può essere visualizzato utilizzando le seguenti variabili:
- nome_visualizzazione_relazione = SAMPLECUSTID
- nome_visualizzazione_ruolo = MYCUSTOMER
- uuid = 80C (questo numero viene generato automaticamente dal server)
Nota: per i database Oracle , la convenzione di denominazione differisce a questo proposito: vengono utilizzati solo i primi dieci caratteri di relationship_display_name e role_display_name .
Ciascuna vista conterrà le colonne (incluse le proprietà associate di tipo, valore e nullable) elencate nella seguente tabella:
| Nome | Tipo di dati | Valore | Annullabile? |
|---|---|---|---|
INSTANCEID |
Intero | Il numero ID utilizzato per correlare i dati dell'istanza tra diverse applicazioni. | No |
COLONNE_ATTRIBUTO_RUOLO
|
|
Il nome e il tipo della colonna dipendono dalla definizione del ruolo. I nomi colonna si basano sui nomi attributo chiave, mentre i tipi di colonna sono tipi di dati del database associati in base al tipo di attributo chiave definito nella definizione del ruolo. | No |
STATUS |
Intero | 0-4
Nota: quando si popolano le istanze tramite le viste, assicurarsi che il valore per questa colonna sia 0.
|
Sì |
LOGICAL_STATE |
Intero |
Accertarsi di impostare il valore corretto quando si popolano i dati del database. |
No |
LOGICAL_STATE_TIMESTAMP |
Data/ora | Data e ora dell'ultimo aggiornamento dei dati della colonna di stato logico. | Sì |
CREATE_TIMESTAMP |
Data/ora | La data e l'ora in cui è stata creata l'istanza del ruolo. | Sì |
UPDATE_TIMESTAMP |
Data/ora | Data e ora dell'ultimo aggiornamento dell'istanza di ruolo. | Sì |
ROLEID |
Intero | Numero ID utilizzato per identificare un'istanza di ruolo | No |