Search code examples
pythonpostgresqlplpython

Call plpgsql Function from a PL/Python Function in PostgreSQL


Is is possible to call a plpgsql function (or any PostgreSQL function) from a PL/Python function?

So, something like this:

CREATE FUNCTION somefunc() RETURNS void AS $$
DECLARE
    ...
BEGIN
    ...
END;
$$ LANGUAGE plpgsql;

And then use it here

CREATE FUNCTION pythonFunc() RETURNS void AS $$
    ...
    someFunc() #postgreSQL function
    ...
$$ LANGUAGE plpythonu;

Solution

  • create function plpython_function()
    returns void as $$
    
        plpy.execute('select plpgsql_function()')
    
    $$ language plpythonu;
    

    PL/Python Database Access