【发布时间】:2012-04-23 06:41:11
【问题描述】:
我需要编写一个 plpgsql 函数,它在无限循环中执行更新语句:
create function change_type() returns void as $$
begin
loop
update table a set type = 1 where date < now();
end loop;
end;
$$ LANGUAGE plpgsql;
当我调用这个函数时,更新语句没有被执行,尽管我可以看到循环正在运行。我将更新语句作为单个查询运行,它可以工作。我该如何解决这个问题?
谢谢
【问题讨论】:
-
0_0 首先,不要使用带有无限循环的存储过程,不会中断!
-
那我该怎么办?我需要一些可以无限期运行并根据时间进行更新的东西。
-
你完全重新考虑你在做什么。彻底彻底。
-
你认为你为什么需要这个?
标签: postgresql stored-procedures loops plpgsql