Hi Victor,
I'm trying to invoke a store procedure thorugh Sequoia, the database is SQL Server 2000.

This the method in the java client with the Sequoia driver

*public* *void* callStoredProcs() { String sqlString="{call spDstSelect()}"; *try* { conn.setAutoCommit(*false*); CallableStatement cs = (CallableStatement) conn.prepareCall(sqlString); cs.registerOutParameter(1, Types./VARCHAR/); ResultSet rs = cs.executeQuery(); rs.next(); System./out/.println(rs.getString("logs") ); }*catch* (Exception e) {
                e.printStackTrace();
} }

When I executed the code I get the following exception:

Backend mySqlServerDB - BackendWorkerThread for backend 'xxx' with RAIDb level:1 failed ([Microsoft][SQLServer 2000 Driver for JDBC]Object has been closed.)

The procedure works, it has been tested, I have executed SQL queries without problems.

Could anybody help me?

I don't think OUT parameters have been tested with SQL server. There might be a problem with the order ResultSet and OUT parameters are retrieved (see http://java.sun.com/j2se/1.5.0/docs/guide/jdbc/getstart/callablestatement.html). You might want to try different drivers FreeTDS or Microsoft one to see if one works better than the other. You can also try to use cs.execute() instead of cs.executeQuery() as this is a different code path.

Keep us posted with your findings.
Thanks for your feedback,
Emmanuel
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to