【发布时间】:2018-06-06 15:28:56
【问题描述】:
我有一个带有日期字段 (d) 和布尔字段 (b) 的第一个表 (A)。每次更新 d 时,它都会使用以下函数触发第二个表(B)中的插入:
BEGIN
INSERT INTO B(field)
SELECT d
FROM A
WHERE b IS true AND OLD.d IS DISTINCT FROM NEW.d;
RETURN NEW;
END
我希望它在 B 中插入一个包含 d 的元素,仅当 b 为真且 d 刚刚更新时,但每次触发该函数时,无论 d 是否更改,每个 b 为真的日期都会插入到 B 中与否。
触发器是一个行触发器,它在 d 更新之后触发。
我想我做错了什么,但我不知道是什么。
【问题讨论】:
标签: sql postgresql triggers insert distinct