Re: Reading an OUT parameter out of a function call

From: Russell Keane <Russell(dot)Keane(at)inps(dot)co(dot)uk>
To: Adrian Klaver <adrian(dot)klaver(at)gmail(dot)com>, Stefan Keller <sfkeller(at)gmail(dot)com>
Cc: pgsql-general List <pgsql-general(at)postgresql(dot)org>
Subject: Re: Reading an OUT parameter out of a function call
Date: 2013-02-25 18:27:23
Message-ID: 8D0E5D045E36124A8F1DDDB463D548557D1618F5D0@mxsvr1.is.inps.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> > I have a simple void function:
> >
> > CREATE OR REPLACE FUNCTION myfn(myparam OUT int) AS $$ BEGIN
> > pnr := 1;
> > END;
> > $$ LANGUAGE plpgsql;
> >
> > How do I access myparam?
> > I thought this should work with 9.1/9.2: SELECT (myfn()).myparam; Or
> > inside another function?
>
> You get the above to load?
> I get:
> ERROR: "pnr" is not a known variable
> LINE 4: pnr := 1;

The following all works under 9.2:

CREATE OR REPLACE FUNCTION myfn(myparam OUT int, myparam2 OUT int) AS $$ BEGIN
myparam := 1;
myparam2 := 2;
END;
$$ LANGUAGE plpgsql;

select myparam from myfn();
select myparam2 from myfn();
select myfn();
select * from myfn();

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message John R Pierce 2013-02-25 18:29:03 Re: Use, Set Catalog and JDBC questions
Previous Message Frank Cavaliero 2013-02-25 18:22:54 Use, Set Catalog and JDBC questions