用于防止更新Mysql中的特定列和行的触发器

用于防止更新Mysql中的特定列和行的触发器,mysql,triggers,Mysql,Triggers,我最近发布了一个关于能够阻止特定表更新的触发器的问题,然后在评论中询问了一个防止特定列和行更新的解决方案。我设法写了一个触发器来阻止特定列的更新,但我仍然不知道如何将其限制在特定的行数上。所以我想我应该打开一个新的问题,以便将这个解决方案提供给那些需要它的人,并且对我的另一个问题有一个回答,这意味着将这个触发器限制在特定的行数上。以下触发器适用于列: DELIMITER ;; CREATE TRIGGER my_trigger BEFORE UPDATE ON test_table FOR E

我最近发布了一个关于能够阻止特定表更新的触发器的问题,然后在评论中询问了一个防止特定列和行更新的解决方案。我设法写了一个触发器来阻止特定列的更新,但我仍然不知道如何将其限制在特定的行数上。所以我想我应该打开一个新的问题,以便将这个解决方案提供给那些需要它的人,并且对我的另一个问题有一个回答,这意味着将这个触发器限制在特定的行数上。以下触发器适用于列:

DELIMITER ;;

CREATE TRIGGER my_trigger BEFORE UPDATE ON test_table FOR EACH ROW
IF (NEW.price != OLD.price OR NEW.name != OLD.name) THEN
UPDATE UPDATE_OF_TABLE1_IS_NOT_ALLOWED SET value='Update not allowed!';
END IF;;

DELIMITER ;

有没有办法选择被此触发器击中的行数?假设我想选择一个行间隔或特定的行号。。。有什么提示吗?非常感谢。

为什么这里没有人回复?请帮帮我…我真的不明白你在问什么。表1的更新是否允许另一个表?该update语句将影响该表的所有行。如果要限制该更新,则需要在其上放置where子句。