Subject | Re: [Firebird-Java] setSelectableProcedure(true) |
---|---|
Author | Roman Rokytskyy |
Post date | 2004-12-19T22:32:36Z |
> There is a method called setSelectableProcedure(boolean f) inIn fact that method is declared in
> org.firebirdsql.jdbc.FBCallableStatement
org.firebirdsql.jdbc.FirebirdCallableStatement interface.
> Is there any other way to set callable statments selectable?No, there isn't.
> E.g. some System.property to set or perhaps some connection property
> that makes CallableStatements selectable
> by default as you create them?
> The reason I ask is that many other databases use procedures thatProblem is that the Firebird uses two different calls for the selectable
> commonly returns multirow resultsets.
> It would be easier to write multi dbplatform code if you hadn't have
> to resort to ugly things like this:
procedures and normal procedures that return some parameters. For normal
procedures you have to use EXECUTE PROCEDURE statement, but if you use it
for selectable procedures, you will get only first row. However if you use
SELECT * FROM myProc that is not selectable, you get an empty result set.
And the problem is that server does not provide an hint to tell whether
procedure is selectable or not.
So, I'm, afraid, if we will use SELECT * FROM <proc name> as default
construct (as you suggest) is not the solution to your problem. It must be
solved in the server somehow.
Roman