0
我希望當我把新的記錄表,在插入之前,我想更新舊記錄爲鬼(有些像禁用),並最終添加這個新的。所以,我準備簡單的觸發功能如何在插入新文件之前對所有記錄進行更新?
CREATE OR REPLACE FUNCTION trg_ghost_game_seed_ins_bef()
RETURNS trigger AS
$$
BEGIN
UPDATE dice_game_seed SET ghost = true WHERE ghost = false;
RETURN NEW;
END
$$ LANGUAGE plpgsql;
CREATE TRIGGER ins_up_bef
BEFORE INSERT OR UPDATE ON dice_game_seed
FOR EACH ROW
EXECUTE PROCEDURE trg_ghost_game_seed_ins_bef();
,當我試圖插入新記錄,我有信息
SQL statement "UPDATE dice_game_seed SET ghost = true WHERE ghost = false"
PL/pgSQL function "trg_ghost_game_seed_ins_bef" line 3 at SQL statement
但是,什麼是錯與3號線???
你告訴到觸發:如果你使用任何類型的交易更新時更新,它就像一個無限循環 – Houari 2014-08-30 21:31:18
是不是這種做法毫無意義。只是猜測。 – gorn 2014-08-30 22:16:53