我正在尝试根据此触发器更新表:
@H_404_13@
- CREATE TRIGGER alert
- AFTER UPDATE ON cars
- FOR EACH ROW
- EXECUTE PROCEDURE update_cars();
触发功能:
- CREATE FUNCTION update_cars()
- RETURNS 'TRIGGER'
- AS $BODY$
- BEGIN
- IF (TG_OP = 'UPDATE') THEN
- UPDATE hello_cars SET status = new.status
- WHERE OLD.ID = NEW.ID;
- END IF;
- RETURN NULL;
- END;
- $$LANGUAGE plpgsql;
触发器工作正常.更新cars表时,会更新hello_cars表,但每行中的status列都会更新并包含相同的新状态!必须根据车辆ID更新.
我认为我的问题是条件:WHERE OLD.ID = NEW.ID;但我不知道出了什么问题.
提前致谢.