创建仅影响当前行的MySQL触发器,可以使用以下步骤:
CREATE TRIGGER trigger_name
AFTER UPDATE
ON table_name FOR EACH ROW
BEGIN
IF NEW.column_name <> OLD.column_name THEN
SET NEW.another_column_name = new_value;
END IF;
END;
其中,trigger_name
是触发器的名称,table_name
是要监听的表名,column_name
是要监听的字段名,another_column_name
是要更新的字段名,new_value
是要更新的值。
FOR EACH ROW
来确保触发器仅影响当前行。NEW
和OLD
关键字来分别表示新的行值和旧的行值。在上面的示例中,我们使用NEW.column_name
和OLD.column_name
来表示新的字段值和旧的字段值。IF
语句来判断是否需要更新另一个字段的值。在上面的示例中,我们使用IF NEW.column_name <> OLD.column_name
来判断新的字段值是否与旧的字段值不同。SET
语句来更新另一个字段的值。在上面的示例中,我们使用SET NEW.another_column_name = new_value
来更新另一个字段的值。通过以上步骤,我们可以创建一个仅影响当前行的MySQL触发器,来自动更新某个表中的数据。
领取专属 10元无门槛券
手把手带您无忧上云