2018-02-11 14:50 GMT+01:00 PegoraroF10 <mar...@f10.com.br>:

> but DO doesn´t return values, or it does ?
>
> execute block returns(ID Integer, Name varchar(50), LastInvoice Date, ...)
> as
> begin
>   for select ID, Name from Customers where ... into ID, Name do begin
>     select bla, bla, bla from functionX(ID) into ...;
>     if ... then
>       bla = X
>     else
>       bla = Y;
>     if bla = XXX then
>       suspend; -- here we return a record and as we are inside a loop we
> will return several records;
>   end
> end
>
> As you can see, this entire block can be called from client dynamically,
> their result fields are defined when it runs and we can return a set of
> records. So, DO doen´t work this way, does it ?
>

You can use temporary function in PostgreSQL. DO command has not result.
Theoretically, you can use a cursor with transaction scope. It can be
filled in DO command and outer can be read by FETCH command.

Regards

Pavel


>
>
>
> --
> Sent from: http://www.postgresql-archive.org/PostgreSQL-general-
> f1843780.html
>
>

Reply via email to