2012-04-21 38 views
7

我需要一些帮助来完成这个触发我尝试,但我不知道什么是错:(,,我使用wampserver phpmysql ,,这是代码:如果触发MySQL的声明

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; 

任何一个可以帮我请????

+2

什么是你得到 – Satya 2012-04-21 11:12:32

+0

什么是你想都做了错误 – 2012-04-21 11:14:24

+0

尝试** **设置检查=检查+ 1; – Bohemian 2012-04-21 11:21:35

回答

18
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; 

$$