0

我是 SQL 的初学者,我正在尝试为我的 postgreSQL 数据库创建一个触发函数,它将使用 postgresql-plpython.9.5 执行一个 python 函数:

CREATE PROCEDURAL LANGUAGE "plpython" HANDLER plpython_call_handler;
CREATE FUNCTION process_all_or_apart() RETURNS text AS 
' 
#some python code
'
LANGUAGE "plpython";
CREATE TRIGGER trigger2
BEFORE INSERT ON some_data

EXECUTE PROCEDURE process_all_or_apart();

虽然我在我的数据库中有 postgresql-plpython 作为扩展,但它得到了同样的错误:

"ERROR:  function plpython_call_handler() does not exist"

如何解决?

4

1 回答 1

0

可能还有更多问题:

  1. PLPython 不复存在 - Postgres 仅支持 PLPythonu 语言。

    尝试创建仅语言的机智声明:

    CREATE LANGUAGE plpythonu;
    
  2. 也许你缺少包 postgresql-plython 或 postgresql-plpython3

于 2016-10-25T05:54:09.277 回答