É possível acessar os bancos de dados a partir do nó JavaCompute utilizando somente os seguintes métodos:
- MbSQLStatement
- Drivers JDBC tipo 4
O gerenciador de recursos do intermediário não coordena o acesso ao banco de dados ao utilizar drivers JDBC tipo 4.
A classe
MbSQLStatement fornece acesso completo ao banco de dados transacional utilizando ESQL. Crie instâncias dessa classe utilizando o método
createSQLStatement() de
MbNode, transmitindo a origem de dados ODBC, uma instrução ESQL do intermediário e, como opção, o modo de transação para o método.
- Chamar select() nesse objeto retorna os resultados
da consulta.
- Chamar execute() nesse objeto executa uma consulta
para a qual nenhum resultado é retornado, como atualizar uma tabela.
O código Java a seguir mostra como acessar um banco de dados utilizando
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)
{
// Fazer tratamento de erros aqui
}
getOutputTerminal("out").propagate(assembly);