E' possibile accedere ai database dal nodo JavaCompute solo utilizzando i seguenti metodi:
- MbSQLStatement
- Driver JDBC Type 4.
Il programma di gestione risorse del broker non coordina l'accesso al database quando vengono utilizzati i driver JDBC Type 4.
La classe
MbSQLStatement fornisce accesso completo al database transazionale utilizzando ESQL. Creare istanze di questa classe utilizzando il metodo
createSQLStatement() di
MbNode, passando all'origine dati ODBC, un'istruzione EQSL del broker e in modo facoltativo la modalità di transazione al metodo.
- Se si richiama select() su questo oggetto vengono restituiti i risultati della query.
- Se si richiama execute() su questo oggetto viene eseguita una query dove non sono restituiti i risultati, ad esempio l'aggiornamento di una tabella.
Nel seguente codice Java viene descritta la procedura per accedere a un database utilizzando
MbSQLStatement:
MbMessage newMsg = new MbMessage(assembly.getMessage());
MbMessageAssembly newAssembly = new MbMessageAssembly(assembly, newMsg);
String table = "dbTable";
MbSQLStatement state = createSQLStatement( "dbName",
"SET OutputRoot.XML.integer[] = PASSTHRU('SELECT * FROM " + table + "');" );
state.setThrowExceptionOnDatabaseError(false);
state.setTreatWarningsAsErrors(true);
state.select( assembly, newAssembly );
int sqlCode = state.getSQLCode();
if(sqlCode != 0)
{
// Do error handling here
}
getOutputTerminal("out").propagate(assembly);