0
我的目标是在我的表中的行发生更新之前计算并保留某个值。PostgreSQL触发器和存储过程不在踢
我创建了触发器和函数,我没有得到任何错误,但函数似乎没有被踢入。我哪里错了?
过程
CREATE or REPLACE FUNCTION foo() returns trigger as
$BODY$
DECLARE
BEGIN
NEW.geomtry := st_transform(st_pointfromtext('POINT(' || NEW.af_lon || ' ' || NEW.af_lat || ')', 4326), 32643);
return NEW;
END;
$BODY$
language plpgsql;
的触发更新发生之前
CREATE TRIGGER foo_trigger BEFORE UPDATE ON foo_table FOR EACH ROW EXECUTE PROCEDURE foo();
你究竟是什么意思,“*似乎没有踢*”。你运行的是什么声明,你期望能够触发触发器 – 2011-04-07 10:17:56
通过'kick in',我的意思是,当表中的一行更新从应用程序触发时,需要在实际值之前计算并持久化更新发生没有发生。 – Shreyas 2011-04-07 10:31:27
你运行哪个应该触发触发器? – 2011-04-07 10:34:53