我需要填充一个 Mysql 表字段。由于技术原因,它不能直接工作,所以我使用了一个临时字段和一个触发器。它应该是这样工作的:如果临时字段不为空,则需要取临时字段的值并将其设置为所需的值,并将临时字段设置为NULL。如果我这样做:我创建一个触发器BEFORE UPDATE
IF NEW.field_tmp IS NOT null THEN
SET NEW.field_1 = NEW.field_tmp;
SET NEW.field_tmp = null ;
END IF
然后两个字段都设置为NULL。下面的代码运行良好,但不会使临时字段无效。
IF NEW.field_tmp IS NOT null THEN
SET NEW.field_1 = NEW.field_tmp;
END IF
是否可以在一个触发器中解决此问题,或者我是否需要添加第二种类型的触发器AFTER UPDATE:
IF NEW.field_tmp IS NOT null THEN
SET NEW.field_tmp = null ;
END IF
您可以使用临时变量
@temp来存储中间值