日期:2014-05-16  浏览次数:20684 次

postgresql数据库创建函数总报错
第一次用这个数据库,装的是8.4版的,用自带的工具pgadmin创建函数总报错,下面代码是工具自动生成的,
CREATE FUNCTION wdtest() RETURNS integer AS
$BODY$begin
return 1;
end;$BODY$
LANGUAGE 'sql' VOLATILE;
ALTER FUNCTION wdtest() OWNER TO postgres;

错误提示:
发生一个错误;
ERROR: syntax error at or near "return"
LINE 3: return 1;


------解决方案--------------------
CREATE FUNCTION wdtest() RETURNS integer AS $$
begin
return 1;
end;
$$ LANGUAGE plpgsql
------解决方案--------------------
手册中就有例子啊。 下面就是手册中的例子

SQL code
CREATE FUNCTION dup(in int, out f1 int, out f2 text)
    AS $$ SELECT $1, CAST($1 AS text) || ' is text' $$
    LANGUAGE SQL;

SELECT * FROM dup(42);