我是PostgreSQL的初学者。我得到了一个PostgreSQL的SQL补丁,并在执行SQL时在我的最后配置它。我收到了以下错误。我的背景是MySQL。
CREATE FUNCTION wine_entry_script() RETURNS trigger
LANGUAGE plperlu AS
$$
#!/usr/bin/perl -w
use strict;
require ('/var/lib/pgsql/data/Trigger_Processor1.0.pl');
$$;
错误:语言“plperlu”不存在SQL状态:42704提示:使用 CREATE LANGUAGE将语言加载到数据库中。
答案 0 :(得分:8)
plperlu
是untrusted version of plperl。它是PostgreSQL中准备好的选择之一。看看:
SELECT * FROM pg_language;
如果要使用它,则必须为每个数据库运行一次:
CREATE LANGUAGE plperlu;
但请注意安全隐患 More in the manual.
大多数Linux系统都安装了Perl。在Windows下,确保系统中已安装some flavor of Perl(提供所需的dll文件),然后才能创建语言。
相关:
答案 1 :(得分:4)
创建扩展,然后创建语言。
CREATE EXTENSION plperl;
CREATE LANGUAGE plperlu;