我在mysql数据库中遇到触发器问题, 问题是,我有这个触发器:
BEGIN
IF OLD.sincronizado = 'S' THEN
SET NEW.sincronizado = 'N';
END IF;
END
每次表中的记录都要更新,我需要将“sincronizado”栏目修改为“N”。当列为'S'并且更新时它会变为'N',但是当它已经'S'并且我对'S'进行更新时,它会变为'N'。
ps:“更新前”。
答案 0 :(得分:0)
您需要添加其他条件
IF OLD.sincronizado = 'S' and NEW.sincronizado <> 'S' THEN
所以它看起来像
BEGIN
IF OLD.sincronizado = 'S' and NEW.sincronizado <> 'S' THEN
SET NEW.sincronizado = 'N';
END IF;
END
答案 1 :(得分:0)
试试这个
BEGIN
IF ( OLD.sincronizado = 'S' AND NEW.sincronizado != 'S' )THEN
SET NEW.sincronizado = 'N';
ENDIF ;
END