Re: [GENERAL] Functions - Mailing list pgsql-admin

From c k
Subject Re: [GENERAL] Functions
Date
Msg-id d8e7a1e30809151053g5ce95e53m7621c017cd9adbe1@mail.gmail.com
Whole thread Raw
In response to Functions  ("c k" <shreeseva.learning@gmail.com>)
Responses Re: [GENERAL] Functions
List pgsql-admin


On Mon, Sep 15, 2008 at 11:22 PM, c k <shreeseva.learning@gmail.com> wrote:
If I have a function having:
begin
insert into something ...
select max(primary key) from something..
end;

does the second statement within a function can view the results after execution of first statement to get max(P.K.)?

CPK

On Mon, Sep 15, 2008 at 10:38 PM, Richard Huxton <dev@archonet.com> wrote:
c k wrote:
> Dear PG members,I want to know that does begin and end in plpgsql are
> related to begin transactions and commit? if yes/no how?

No. All functions operate within a transaction.

> If I start to
> execute a function of multiple statements does PG commits each transaction
> within a function, or whole function as a transaction.

You can have many statements (function calls) within a single
transaction. If you don't explicitly issue BEGIN ... COMMIT then each
statement is wrapped in its own transaction. Note that some client
libraries have "autocommit" options that do things their own way.

> Also if first statement makes inserts/updates a row, does it automatically
> available to that particular function execution only or to any other
> instances of same function?
> Please give the details.

If you insert/update/delete one or more rows, they are visible outside
the function - it's all the same tables.

> In my system, function are extensively used and cab called by different
> clients as ODBC, JDBC and others.

There is no difference between a user-written function and a built-in
function in PostgreSQL as regards calling them or their effects. Some
clients might offer better support than others, but they should all let
you build "raw" sql.

--
 Richard Huxton
 Archonet Ltd


pgsql-admin by date:

Previous
From: "Scott Marlowe"
Date:
Subject: Re: Functions
Next
From: "Scott Marlowe"
Date:
Subject: Re: [GENERAL] Functions