【问题标题】:Comparing string in mysql trigger比较mysql触发器中的字符串
【发布时间】:2014-03-30 12:32:29
【问题描述】:

这是我创建的触发器,我想将 new.utype 与下面给出的员工进行比较,但不知道在 mysql 中比较它的实际方法.. 我怎样才能实现这一点,还请告诉条件语法是否正确或不是

delimiter $$

CREATE TRIGGER insdetail_tomaster
AFTER INSERT ON tempdetail
FOR EACH ROW BEGIN
IF(new.utype =='employee') THEN
INSERT INTO master_employee values(new.field1,new.filed2);
ELSE 
INSERT INTO master_manager values(new.field1,new.fiel2);
END $$

DELIMITER ;

【问题讨论】:

  • 请帮忙看看这里有没有人
  • 看起来不错,除了 new.filed2 应该是 new.field2 并且 new 通常写成 NEW。您面临的确切问题是什么?触发器是否按预期工作?
  • 感谢问题解决了,我使用 strcmp 函数进行比较

标签: mysql sql triggers


【解决方案1】:

如下使用“like”关键词

IF new.utype like 'employee' 

整个触发器如下所示

delimiter $$

CREATE TRIGGER insdetail_tomaster
AFTER INSERT ON tempdetail
FOR EACH ROW BEGIN
IF new.utype like 'employee'  THEN
INSERT INTO master_employee values(new.field1,new.filed2);
ELSE 
INSERT INTO master_manager values(new.field1,new.fiel2);
END $$

DELIMITER ;

我假设你写的触发器不是字符串比较是正确的 谢谢

【讨论】:

    猜你喜欢
    • 2020-02-11
    • 2011-10-24
    • 1970-01-01
    • 2018-02-20
    • 1970-01-01
    • 2015-11-02
    • 2015-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多