Search Postgresql Archives

Re: libpq sendQuery -- getResult not returning until all queries complete

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Dec 22, 2010 at 11:38 AM, Kelly Burkhart
<kelly.burkhart@xxxxxxxxx> wrote:
> On Wed, Dec 22, 2010 at 10:19 AM, Merlin Moncure <mmoncure@xxxxxxxxx> wrote:
>> have you ruled out sending all the data you need to send into say, a
>> plpgsal function and doing the work there?
>>
>
> Not sure that would do what they need, which is get a list of users,
> get a list of accounts, get perhaps several other lists of other
> things to populate gui elements (mostly small queries).  To do this
> within a stored procedure, the procedure would either have to return
> multiple PGresult objects with different columns (is that possible?)
> or we'd have to shoehorn everything into one result set with some kind
> of indicator on each row to indicate what kind of row it is.  The
> second option is (to me anyway) clearly inferior to just sending a
> list of queries then reaping their PGresults as they come in.

it is completely possible.

create type account_t as row(id int, name text);

create or replace function app_login(
  accounts out account_t[]
  users out user_t[]) returns record as
$$
begin
  select array(select id, name from account into accounts);
...

end;
$$ language plpgsql;

arrays come back over libpq as text, unless you use libpqtypes (which
i co-wrote) :-).

http://libpqtypes.esilo.com/man3/pqt-composites.html

merlin

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux