0
이 트리거가 작동하지 않는 것 같습니다.if 문을 사용하는 MYSQL 트리거
CREATE TRIGGER class_check BEFORE INSERT ON Category
DECLARE x VARCHAR(1);
SET x = (SELECT Type1 FROM Category);
IF (x<>'A') THEN
CALL `'ERROR'`;
END IF;
IF (NEW.MxLen > 3 AND x ='M') THEN
CALL `'ERROR LENGTH MUST BE LESS THAN 3 FOR M CLASS LICENSE'`;
ELSEIF (NEW.MxLen > 5 AND x ='G') THEN
CALL `'ERROR LENGTH MUST BE LESS THAN 5 FOR G CLASS LICENSE'`;
ELSEIF (NEW.MxLen > 30) THEN
CALL `'ERROR LENGTH MUST BE LESS THAN 30 FOR A,B,C,D,E CLASS LICENSE'`;
END IF;
위의 트리거는 내가 원하는 방식으로 작동하지 않으며 문제를 찾을 수없는 것 같습니다. 기본적으로 Category 테이블의 type1이 Not A인지 확인한 다음 오류가 발생하는지 확인하고 싶습니다. A를 추가 할 때마다 오류가 계속 발생합니다. 도움이 될 것입니다. 나는 BEFORE UPDATE에도 똑같은 것을 가지고있다.
어떤 오류 메시지가 나타 납니까? 아마도 'ERROR LENGTH는 A, B, C, D, E CLASS 라이센스'에 대해 30 이하 여야 만합니까? –
첫 번째 오류 'ERROR'가 표시됩니다. – user3221162