programing

MYSQL: 다음 업데이트 트리거가 작동하지 않는 이유는 무엇입니까?

oldcodes 2023. 10. 1. 21:54
반응형

MYSQL: 다음 업데이트 트리거가 작동하지 않는 이유는 무엇입니까?

CREATE TRIGGER `add_history` AFTER UPDATE ON `meters`
FOR EACH ROW 
 CASE inserted.id
 WHEN 2 THEN
   INSERT INTO waterlog SET deciliter = 5;
 WHEN 3 THEN
   INSERT INTO eleklog SET kwh = 1;
END CASE

업데이트되는 행(ID가 2 또는 3인 레코드)에 따라 다른 쿼리를 실행합니다. 미터 테이블은 다음과 같습니다.

id   meter   value
2        water    121
3        elek     344

값은 정기적으로 업데이트되며 다른 테이블의 로그 항목 생성을 트리거해야 합니다.

시도해 보기:

CREATE TRIGGER `add_history` AFTER UPDATE ON `meters`
FOR EACH ROW 

IF (NEW.id = 2) THEN
    INSERT INTO waterlog SET deciliter = 5;
ELSEIF (NEW.id = 3) THEN
    INSERT INTO eleklog SET kwh = 1;
ENDIF

언급URL : https://stackoverflow.com/questions/25586752/mysql-why-is-the-following-update-trigger-not-working

반응형