Subject Re: [Firebird-Java] setSelectableProcedure(true)
Author Roman Rokytskyy
> I missed the other parts. What is being proposed?

To introduce a connection property, when it is set, driver by default will
convert {call <procname> (?, ?....)} into SELECT * FROM <procname>(?, ...).
At present time by default EXECUTE PROCEDURE <procname>(?, ...) is
generated.

When EXECUTE PROCEDURE is used to execute selectable procedure, only first
row is fetched. When SELECT * FROM is used to a non-selectable procedure,
results of the procedure are not returned.

Both cases are bad. JayBird provides FirebirdCallableStatement interface
with method setSelectableProcedure(boolean) that controls the SQL statement
that is generated.

> Does it follow specifications?

This has nothing to do with the specification. We're looking for a
workaround that could simplify life to developers that want to use pure JDBC
API without linking to the Firebird interfaces. This is pretty legitimate
requirement, but clean solution can happen only in the engine.

Roman