mysql - MySQL 触发器中的 IF 语句

标签 mysql triggers

我需要一些帮助来完成这个触发器。我试了一下,但我不知道出了什么问题。

这是代码:

delimiter $$

CREATE TRIGGER attendance_clock AFTER INSERT ON alldevicerecord
FOR EACH ROW
BEGIN
    DECLARE check INT;
    SET check= 1;
    IF (check % 2 == 0) THEN
      INSERT into designation(emp_id, clock_date, clock_in) VALUES (new.id, new.time, new.time);
      check  = check + 1;
    ELSE
      UPDATE designation SET clock_out = new.time WHERE emp_id = NEW.id;
      check = check + 1;
    END IF
END$$

delimiter ;


谁能帮帮我?

最佳答案

delimiter $$

CREATE TRIGGER attendance_clock AFTER INSERT ON alldevicerecord
FOR EACH ROW
BEGIN
  DECLARE `check` INT;
  SET `check` = 1;
  IF (`check` % 2 = 0) THEN
    INSERT INTO designation (emp_id, clock_date, clock_in) VALUES(new.id, new.time, new.time);
    SET `check`  = `check` + 1;
  ELSE
    UPDATE designation SET clock_out = new.time WHERE emp_id = NEW.id;
    SET `check`  = `check` + 1;
  END IF;
END$$

delimeter ;

关于mysql - MySQL 触发器中的 IF 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10258394/

相关文章:

mysql - 2张表的主键

mysql - ADD_DATE(如果日期已过期)(自动订阅)

postgresql - Postgres 插入或更新触发器 WHEN 条件(旧)

mysql - 具有多个左连接的 SQL

mysql - 根据 IP 地址对大量帖子进行地理定位。 (880,000 行)

sql - 在触发器中使用插入值

mysql - 如何在 MySQL 上使用唯一的字符序列生成触发器?

Azure Function 不遵循 CRON 计时器计划

php - 当我尝试从数组中获取值插入 MySQL 时收到错误消息

mysql - 如何使用 ReactJS 前端在数据库中存储密码信息?