我的 Postgresql 数据库中定义了以下存储过程或函数:
CREATE OR REPLACE FUNCTION insert_val(int)
$body$
BEGIN
FOR i IN 1..10 LOOP
insert into test (val)
values($23);
END LOOP;
END;
$body$ Language 'plpgsql' VOLATILE;
我只是想在一个循环中插入这个数据,但我总是得到这个错误:
Syntaxfehler bei »begin«
也许我在我的函数中遗漏了什么?
最佳答案
我不明白错误消息,因为它不是英文的,但我可以在您的代码中看到一些问题
CREATE OR REPLACE FUNCTION insert_val(IN val int) RETURNS VOID AS
$body$
BEGIN
FOR i IN 1..10 LOOP
insert into test (val)
values($23);
END LOOP;
END;
$body$ Language 'plpgsql' VOLATILE;
您缺少返回类型,您缺少 AS
并且您忘记命名 in 参数。
关于postgresql - 将数据插入 Postgresql 的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38829992/