ESQL dispone di diverse istruzioni e
funzioni per l'accesso ai database:
E' possibile accedere ai database
utente dai nodi Compute,
Database e Filter.
Nota: Non esiste alcuna differenza tra le funzioni di
accesso al database di tali nodi; i relativi nomi sono parzialmente storici
e parzialmente basati sull'utilizzo tipico.
E' possibile utilizzare i dati nei database per aggiornare oppure
creare messaggi; oppure utilizzare i dati nei messaggi per aggiornare o creare
i dati nei database.
Notare che:
- Tutti i nodi che utilizzano le funzioni o le istruzioni
ESQL devono avere la proprietà
Origine dati impostata con il
nome (ossia il DSN ODBC) di un database. Il database deve essere
accessibile, operativo e deve consentire al broker di effettuare la
connessione.
- Tutti i database a cui si accede dallo stesso nodo devono avere la stessa funzionalità OBDC del database specificato nella proprietà Origine dati del nodo. Tale
requisito è sempre soddisfatto se i database sono dello stesso tipo (ad
esempio, DB2 oppure Oracle), allo stesso livello (ad esempio,
rilascio 8.1 CSD3) e sulla stessa piattaforma. Altre combinazioni di
database potrebbero non avere la stessa funzionalità OBDC. Se si prova ad accedere tramite un nodo ad un database che non ha a stessa funzionalità OBDC del database specificato nella proprietà Origine dati del nodo, il broker emette un messaggio di errore.
- Tutte le tabelle indicate in una singola clausola
SELECT FROM devono essere nello stesso
database.
Verificare che siano state create le
origini dati ODBC adatte sul sistema su cui è in esecuzione il broker. Se è stato utilizzato il comando
mqsisetdbparms per
impostare un ID utente ed una password per un particolare database, il
broker utilizza tali valori per la connessione al database. Se non sono stati impostati un ID utente ed una password, il
broker utilizza l'ID utente e la password predefiniti del database forniti nel
comando mqsicreatebroker
(come modificati da eventuali comandi
mqsichangebroker
successivi).
Sui sistemi z/OS, utilizzare il membro JCL BIPSDBP nella serie di dati di personalizzazione <hlq>.SBIPPROC per eseguire il comando mqsisetdbparms.
E' necessario verificare che gli ID utente
del database dispongano di privilegi sufficienti per eseguire le operazioni
richieste dal flusso. In caso contrario, si verificheranno errori al
runtime.
Selezionare la casella di spunta
della proprietà Genera eccezione in caso di errore
database e la casella di spunta della proprietà
Valuta le avvertenze come errori
ed impostare la proprietà Transazione su
Automatica per fornire la
massima flessibilità. E' possibile quindi utilizzare le istruzioni COMMIT e
ROLLBACK per il controllo della transazione e creare programmi di
gestione per la gestione degli errori.