2017-01-24 12 views
2

PL/Python関数からplpgsql function(または任意のPostgreSQL function)を呼び出すことはできますか?PostgreSQLのPL/Python関数からplpgsql関数を呼び出す

ので、このような何か:

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

そしてはplpgsql_functionへplpython_functionからで、ここ

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

答えて

3
create function plpython_function() 
returns void as $$ 

    plpy.execute('select plpgsql_function()') 

$$ language plpythonu; 

PL/Python Database Access

+0

どのように渡す引数を、それを使うのか?これに対する短い答えは、 "plpyをimportしてplpy.quote_literalを使う"でしょう。私の返答は、「それはすべてうまくいっていますが、8.2(実際にはGreenplum)にはplpyがありません.quote_literal、実際には私が呼びたいquote_literalです!」ブートストラップの問題。 – PhilHibbs

関連する問題