Hello ,

I have a query about creating nested functions in PostgreSQL.

I am currently using PostgreSQL 15 and I am trying to create a nested
function with the following structure:

CREATE OR REPLACE FUNCTION external_function ()

RETURNS void AS $$

DECLARE

external_variable;

    

    -- Define the internal function

    FUNCTION internal_function ()

    RETURNS void AS $$

    DECLARE

        internal_variable INT;

    BEGIN

        -- Internal function code

        internal_variable:= 10;

        RAISE NOTICE 'Internal Variable: %', internal_variable;

    END;

    $$ LANGUAGE plpgsql;

BEGIN

    -- External function code

    external_variable:= 5;

    RAISE NOTICE 'External variable: %', external_variable;

 

    -- Call internal function

    PERFORM internal_function ();

END;

$$ LANGUAGE plpgsql;

 

However, I get an error, and I can't compile the function.

Thank you very much for your help

Rossana Ocampos 

Reply via email to