Skip site navigation (1) Skip section navigation (2)

Re: CallableStatements

From: Barry Lind <barry(at)xythos(dot)com>
To: Stuart Robinson <stuart(at)zapata(dot)org>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: CallableStatements
Date: 2001-11-26 19:54:27
Message-ID: 3C029DF3.3080006@xythos.com (view raw or flat)
Thread:
Lists: pgsql-jdbc
Stuart,

You are issuing a select statement, so you would use executeQuery() and 
ignore the returned ResultSet.

thanks,
--Barry

Stuart Robinson wrote:

> But if you use the executeUpdate method, you'll get an error, because it
> isn't expecting a result, no? So, how do you call a stored procedure using
> executeUpdate?
> 
> -Stuart
> 
> On Mon, 26 Nov 2001, Barry Lind wrote:
> 
> 
>>Stuart,
>>
>>All stored procedures in postgres return a result.  You can however
>>ignore the result.
>>
>>--Barry
>>
>>
>>Stuart Robinson wrote:
>>
>>
>>>But what do you do if you want to call a stored procedure and NOT get a
>>>result?
>>>
>>>On Mon, 26 Nov 2001, Barry Lind wrote:
>>>
>>>
>>>
>>>>As Dave has said, since stored procedures in Postgres can only return a
>>>>single value, there is little to be gained from CallableStatements that
>>>>you can't already do with regular Statements or PreparedStatements.
>>>>
>>>>The way to call stored procedures in postgres is via a select statement.
>>>> Thus to call procedure foo(), you would issue the query 'select
>>>>foo()'.  Since this is a standard select statement, you can use either a
>>>>regular Statement or PreparedStatement to get the result of this stored
>>>>procedure.
>>>>
>>>>Having said that, if you wanted to contribute a CallableStatement
>>>>implementation for postgres we would be glad to accept it.  Remember
>>>>that this is an open source project, features get added by people who
>>>>want or need them.  If you need CallableStatements implement them an
>>>>submit a patch.
>>>>
>>>>thanks,
>>>>--Barry
>>>>
>>>>
>>>>
>>>>Dave Cramer wrote:
>>>>
>>>>
>>>>
>>>>>Well, given that postgres doesn't support the notion of returning a
>>>>>result set from a stored procedure; I'm not sure what benefit this would
>>>>>be.
>>>>>
>>>>>Regards,
>>>>>
>>>>>Dave
>>>>>
>>>>>-----Original Message-----
>>>>>From: pgsql-jdbc-owner(at)postgresql(dot)org
>>>>>[mailto:pgsql-jdbc-owner(at)postgresql(dot)org] On Behalf Of
>>>>>email(at)gregorybittar(dot)com
>>>>>Sent: Friday, November 23, 2001 6:47 PM
>>>>>To: pgsql-jdbc(at)postgresql(dot)org
>>>>>Subject: [JDBC] CallableStatements
>>>>>
>>>>>
>>>>>CallableStatements weren't in Postgres as of the last time I checked,
>>>>>version 7.1.
>>>>>
>>>>>The JDBC specification has lots of goodies in it, such as examining a
>>>>>server's metadata and sending cursors backwards and forwards over result
>>>>>sets.  However, from the perspective of a Java programmer,
>>>>>CallableStatements are essential tools for communicating with a database
>>>>>server.
>>>>>
>>>>>Without the benefit of CallableStatements, all efforts at efficiency are
>>>>>wasted.  The hallmark of any robust system is distributed processing,
>>>>>which requires invoking stored procedures on foreign machines.  Doing so
>>>>>through CallableStatements would
>>>>>(a) accomplish work and (b) retrieve a result code in one logical
>>>>>network transmission.  Without CallableStatements, retrieving the result
>>>>>code not only requires more programming infrastructure, but also taxes
>>>>>the application at runtime as the Java application tries to discover
>>>>>what the result of the stored procedure was. This method requires an
>>>>>additional deletion to purge the logged result code record, lest the log
>>>>>grow, slowing searches. Therefore, we are looking at considerably more
>>>>>processing done, 2 or 3 transmissions, where 1 should suffice.
>>>>>
>>>>>Consequently, I would hope that CallableStatements are recognized as a
>>>>>very important part of the JDBC puzzle.
>>>>>
>>>>>
>>>>>---------------------------(end of broadcast)---------------------------
>>>>>TIP 2: you can get off all lists at once with the unregister command
>>>>>   (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>>>>>
>>>>>
>>>>>
>>>>>---------------------------(end of broadcast)---------------------------
>>>>>TIP 3: if posting/reading through Usenet, please send an appropriate
>>>>>subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
>>>>>message can get through to the mailing list cleanly
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>---------------------------(end of broadcast)---------------------------
>>>>TIP 5: Have you checked our extensive FAQ?
>>>>
>>>>http://www.postgresql.org/users-lounge/docs/faq.html
>>>>
>>>>
>>>>
>>
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 2: you can get off all lists at once with the unregister command
>>    (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>>
>>
> 



In response to

Responses

pgsql-jdbc by date

Next:From: Rene PijlmanDate: 2001-11-26 19:57:14
Subject: Re: CallableStatements
Previous:From: Dave CramerDate: 2001-11-26 19:45:32
Subject: Re: CallableStatements

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group