Re: Calling Procedure from another procedure in Postgres

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: "Muthukumar(dot)GK" <muthankumar(at)gmail(dot)com>
Cc: "pgsql-general(at)postgresql(dot)org >> PG-General Mailing List" <pgsql-general(at)postgresql(dot)org>
Subject: Re: Calling Procedure from another procedure in Postgres
Date: 2020-12-02 10:39:25
Message-ID: CAFj8pRCwpYqepPTNzj6F+=bpoZCskp-22bkcUpgm9OVNcgVa9w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

st 2. 12. 2020 v 11:20 odesílatel Muthukumar.GK <muthankumar(at)gmail(dot)com>
napsal:

> Hi team,
>
> I need to call the procedure(not function) and insert the records into a
> temporary table from another procedure in postgres. When executing the
> procedure 'Sampleproc2',I got some below syntax error. Kindly let me know
> whether postgres supports this functionality or any other way of calling
> the procedure from another procedure.
>
> CREATE OR REPLACE PROCEDURE SampleProc1()
>
> as $$
>
> declare
>
> c1 refcursor:='result1';
>
> begin
>
> open c1 for
>
> select approverid,assigntoid,effstdt,effenddtfrom tblApproverreassign;
>
> end;
>
> $$
>
> language plpgsql;
>
>
> -------------------------------------------------------------------------------------------------------------
>
> CREATE OR REPLACE PROCEDURE SampleProc2()
>
> as $$
>
> declare c1 refcursor:='result1';
>
> begin
>
> CREATE TEMP TABLE TMPApproverAssign
>
> ( approverid VARCHAR(10),
>
> assigntoid VARCHAR(10),
>
> effstdt timestamptz,
>
> effenddt timestamptz
>
> ) ON COMMIT DROP;
>
>
>
> INSERT INTO TMPApproverAssign
>
> *CALL SampleProc1(); *
>
>
> open c1 for
>
> select approverid,assigntoid,effstdt,effenddtfrom TMPApproverAssign;
>
> end;
>
> $$
>
> language plpgsql;
>
>
> ---------------------------------------------------------------------------------------------
>
> Error : syntax error at or near "CALL"
>
> LINE 12 : ^CALL SampleProc1();
>
> SQL state : 42601
>
> Character:453
>
> ------------------------------------------------------------------
>

Procedures in Postgres cannot to returns tables, so INSERT INTO CALL is
unsupported

Regards

Pavel

>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Thomas Kellerer 2020-12-02 10:55:49 Re: Calling Procedure from another procedure in Postgres
Previous Message Hemil Ruparel 2020-12-02 10:34:22 Re: Calling Procedure from another procedure in Postgres