我为我的英语提前道歉。我是编程新手。PostgreSQL中的存储过程有一个问题。我有一张table:
CREATE TABLE user
(
Id serial,
idGroup INTEGER,
firstname VARCHAR(45),
lastname VARCHAR(45)
)
字符串
我想创建一个添加新用户的过程。过程本身已经创建,但我无法向其添加新用户。
CREATE PROCEDURE usernew
(
c_Id INOUT INTEGER,
c_idGroup INTEGER,
c_firstname VARCHAR(45),
c_lastname VARCHAR(45)
)
LANGUAGE 'plpgsql' AS
$$
BEGIN
INSERT INTO public.user (idGroup, firstname, lastname) values
(c_idGroup,
c_firstname,
c_lastname
) RETURNING Id INTO c_Id;
END
$$;
call usernew(1, 'poppy', 'jacobs')
型
出现以下错误:
ERROR: procedure usernew(integer, unknown, unknown) does not exist
LINE 1: call usernew(1, 'poppy', 'jacobs')
^
HINT: No procedure matches the given name and argument types. You might need to add explicit type casts.
SQL state: 42883
Character: 6
型
我试着用CAST(.. AS...),但这并没有帮助。
请帮帮我。提前感谢您的合作!
1条答案
按热度按时间ddrv8njm1#
你只需要一个简单的SQL * 函数 *,而不是一个过程。在这里。
字符串
像这样使用它
型
参见demo