gpt4 book ai didi

postgresql - 错误 : syntax error at or near "RETURN" , PostgreSQL 函数

转载 作者:行者123 更新时间:2023-11-29 13:43:51 25 4
gpt4 key购买 nike

我正在尝试编写一个函数,通过添加 person id 从我的表中返回一个 json 数据。我正在为此使用 pgAdmin 4。

CREATE FUNCTION public.getuserinfo(IN userid bigint DEFAULT 00000, OUT uinfo json)
RETURNS SETOF json
LANGUAGE 'sql'
VOLATILE
AS $BODY$
SELECT info into uinfo FROM public.users Where uid=userid;
RETURN uinfo;
$BODY$;
ALTER FUNCTION public.getuserinfo(bigint)
OWNER TO sun;
GRANT EXECUTE ON FUNCTION public.getuserinfo(bigint) TO sun
WITH GRANT OPTION;
REVOKE ALL ON FUNCTION public.getuserinfo(bigint) FROM
PUBLIC;
COMMENT ON FUNCTION public.getuserinfo(bigint)
IS 'gets user info by id';

但是我收到了这个错误。 error image我搜索了教程和之前的另一篇文章 this但没有得到帮助。提前致谢。

最佳答案

你并没有告诉函数有一系列的事情,所以它只希望有一个语句,而有两个。使用 BEGINEND:

CREATE FUNCTION public.getuserinfo(IN userid bigint DEFAULT 00000, OUT uinfo json)
RETURNS SETOF json
VOLATILE
AS $BODY$
BEGIN
SELECT info into uinfo FROM public.users Where uid=userid;
RETURN uinfo;
END;
$BODY$ LANGUAGE plpgsql;

而且语言可能应该是 PL/PGSQL

关于postgresql - 错误 : syntax error at or near "RETURN" , PostgreSQL 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51472670/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com