These seem like reasonable changes. I wonder if this could be made
polymorphic instead of check-and-cast, though. Getting the resultset as
an out param would require some serious changes to how we fetch them
right now though. As I don't have a better solution off top of my head
though... I am in favor of pursuing this.
-Brian
On Mar 9, 2005, at 2:23 PM, Vadim Gritsenko wrote:
Hi all,
I'd like to prepare set of patches to implement support of the stored
procedures returning a result set. In order to do this platform
independently, I'd like to get opinions on whether following changes
to the Platform interface are acceptable or not.
* Add a method to check if statement is a CallableStatement or not:
isCallableStatement(PreparedStatement stmt);
Problem is that simple check (stmt instanceof CallableStatement)
does not work at least for HSQLDB, and I don't know about other
platforms. So, by placing the check into the Platform it should be
possible to implement this check on per-platform base. Abstract
implementation can use instanceof check.
* Add a method to register stored procedure result as a ResultSet.
registerOutResultSet(CallableStatement stmt, int position);
Problem is that while some JDBC drivers are happy with Type.OTHER,
Oracle requires OracleTypes.CURSOR.
* Add a method to retrieve result set from the CallableStatement.
getResultSet(CallableStatement stmt);
According to some, stmt.getResultSet() works on some platforms.
On Oracle, you must call stmt.getObject(1).
Opinions, suggestions, corrections?
Thanks,
Vadim
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]