mysql中触发器的判断员工信息是否存在怎么写
时间: 2024-03-02 07:49:24 浏览: 68
sql 触发器的写法
可以使用触发器中的 NEW 关键字,通过 NEW.列名 的方式来获取插入或更新的数据。根据需要判断员工信息是否存在,可以使用 IF 语句,如果不存在就进行插入,否则就进行更新操作。示例代码如下:
```
CREATE TRIGGER trg_employee_info
BEFORE INSERT ON employee
FOR EACH ROW
BEGIN
DECLARE emp_count INT;
SELECT COUNT(*) INTO emp_count FROM employee WHERE emp_id = NEW.emp_id;
IF emp_count = 0 THEN
INSERT INTO employee_info(emp_id, emp_name, emp_age) VALUES(NEW.emp_id, NEW.emp_name, NEW.emp_age);
ELSE
UPDATE employee_info SET emp_name = NEW.emp_name, emp_age = NEW.emp_age WHERE emp_id = NEW.emp_id;
END IF;
END;
```
以上代码中,触发器 trg_employee_info 在每次插入 employee 表的数据前触发,首先通过 SELECT COUNT(*) 查询 employee_info 表中是否存在该员工信息,如果存在则进行更新操作,否则进行插入操作。
阅读全文