以下代码是我创建触发器功能以更改“pass”列的代码。
create or replace function change_pass()
returns trigger as
$$
begin
NEW.pass := 'XXXXXXXXX';
return NEW;
end
$$
language plpgsql;
create trigger change_pass
AFTER insert or update on "D_ACCOUNT"
for each row execute procedure change_pass();
当我调用insert时,我没有看到我的数据有任何变化。 谁能向我解释我哪里错了?
答案 0 :(得分:1)
您需要BEFORE
触发器来更改NEW
记录中的值:
create trigger change_pass
BEFORE insert or update on "D_ACCOUNT"
for each row execute procedure change_pass();