Re: autocommit and stored procedures

Поиск
Список
Период
Сортировка
От Dave Cramer
Тема Re: autocommit and stored procedures
Дата
Msg-id 77ED2597-BCE7-4BD1-9BD2-14EC2E178099@fastcrypt.com
обсуждение исходный текст
Ответ на Re: autocommit and stored procedures  ("Albe Laurenz" <all@adv.magwien.gv.at>)
Список pgsql-jdbc
On 16-Aug-07, at 5:46 AM, Albe Laurenz wrote:

> roehm@it.usyd.edu.au wrote:
>> In particular, does an JDBC autocommit around the call to a stored
>> procedure commit each statement within that stored procedure, or does
>> it commit the procedure as a whole?
>
> A function in PostgreSQL is always executed within one single
> transaction, so you cannot commit only part of the SQL-statements
> within a function.
>
> The JDBC 4.0 specification says:
>
>  The Connection attribute auto-commit specifies when to end
> transactions. Enabling
>  auto-commit causes a transaction commit after each individual SQL
> statement as
>  soon as that statement is complete. The point at which a statement
> is considered to
>  be "complete" depends on the type of SQL statement as well as what
> the application
>  does after executing it:
>
>  ■ For Data Manipulation Language (DML) statements such as Insert,
> Update,
>  Delete, and DDL statements, the statement is complete as soon as
> it has finished
>  executing.
>  ■ For Select statements, the statement is complete when the
> associated result set
>  is closed.
>  ■ For CallableStatement objects or for statements that return
> multiple results,
>  the statement is complete when all of the associated result sets
> have been closed,
>  and all update counts and output parameters have been retrieved.


Isn't that interesting I wonder who's database has the above select
and CallableStatement semantics.

Dave
>
> To me that seems to mean that if I do
>
> executeUpdate("SELECT myfunction()")
>
> the autocommit should occur after the select statement is finished,
> i.e.
> after the complete function has been executed.
>
> But I'll admit that this is disputable...
>
> Yours,
> Laurenz Albe
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
>        choose an index scan if your joining column's datatypes do not
>        match


В списке pgsql-jdbc по дате отправления:

Предыдущее
От: "Albe Laurenz"
Дата:
Сообщение: Re: autocommit and stored procedures
Следующее
От: Benjamin Shive
Дата:
Сообщение: getGeneratedKeys() support?