Subject Re: RFC: Please unify stored procedure execution
Author Roman Rokytskyy
> Than I don't understand. If CallableStatement can call any SQL
> statement, than what to care about?

CallableStatement is similar to IBStoredProc in IBX. However,
specification requires that JDBC driver supports "unified" (or more
correctly, escaped) syntax for procedure calls, namely {call
<procName>[(<param>[, <param>...]]}. This must be converted into
native SQL call. This escaped syntax does not contain any hint whether
result set is expected or just normal output params are returned.

> of StoredProc object, or something, than just tell the truth to
> driver users that they can't get resultset from stored procedures in
> IB/FB. They need to make select (from table, view or SP) to get
> resultset.

That decreases portability of the Java application and is not very
good for our reputation.

> I'm lost now. I gave example of IBStoredProc component in IBX.
> There is no any problems with SP or not. People uses IBStoredProc
> to Execute procedure, they use IBQuery to call EXECUTE PROCEDURE,
> OR to call SELECT * FROM PROCEDURE. Without any need of IBX to know
> does select calls procedure or not.

IBX is InterBase.... Whenn people use IBX they already develop custom
application for InterBase/Firebird. However when they use JDBC the
program against the unified interface that hides the difference
between databases.


> ??? JDBC can't execute usual SQL SELECT statement without some
> extention???

No, CallableStatement cannot convert {call ...} syntax into SELECT *
FROM .... without any hint.

Roman