MySQL - 如何输入自定义值并覆盖触发器?

MySQL - How can I enter custom value and override trigger?

我有一个 MySQL 触发器以关于另一列条目的 case 语句结尾。

NEW.reference_column = CASE NEW.entry_column
WHEN "Test Value 1" THEN 1
WHEN "Test Value 2 " THEN 2
WHEN "Test Value 3" THEN 3
ELSE 4 END;

但是,有时 reference_column 中存在无法预测的值,我不希望插入其他值,而是插入自定义值。如何在 entry_column 中输入自定义值并覆盖触发器,使其不插入其他值?

编辑:我试图跳过 ELSE 值,但在尝试覆盖时它只是给我一个空白更正。

嗯嗯。 . .这样的逻辑会如你所愿吗?

NEW.reference_column = (CASE WHEN NEW.entry_column = 'Test Value 1' THEN 1
                             WHEN NEW.entry_column = 'Test Value 2' THEN 2
                             WHEN NEW.entry_column = 'Test Value 3' THEN 3
                             WHEN NEW.entry_column LIKE 'Custom %'
                             THEN substring_index(NEW.entry_column, ' ', -1) + 0
                             ELSE 4
                        END);

新值将插入为 'Custom 5'