【问题标题】:Call plpgsql Function from a PL/Python Function in PostgreSQL从 PostgreSQL 中的 PL/Python 函数调用 plpgsql 函数
【发布时间】:2017-01-24 11:22:45
【问题描述】:

是否可以从PL/Python 函数调用plpgsql function(或任何PostgreSQL function)?

所以,是这样的:

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

然后在这里使用

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

【问题讨论】:

    标签: python postgresql plpython


    【解决方案1】:
    create function plpython_function()
    returns void as $$
    
        plpy.execute('select plpgsql_function()')
    
    $$ language plpythonu;
    

    PL/Python Database Access

    【讨论】:

    • 如何将参数从 plpython_function 传递给 plpgsql_function?对此的简短回答是“导入 plpy 并使用 plpy.quote_literal”。我对此的回答是,“这一切都很好,但是 8.2(实际上是 Greenplum)没有 plpy.quote_literal,我想调用的实际上是 quote_literal!”引导问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    • 2015-04-05
    • 2020-02-04
    • 2017-12-11
    • 1970-01-01
    相关资源
    最近更新 更多