2010-11-19 6 views
0

정의 :MySQL의 구문 오류이 트리거 생성 구문이 실패하는 이유는 알아낼 수 없습니다 트리거

CREATE TRIGGER mytrigger BEFORE UPDATE ON mytable 
FOR EACH ROW 
BEGIN 
    IF NEW.col1 = 0 AND NEW.col2 != '' AND NEW.col3 > 0 THEN 
     SET NEW.col1 = NEW.col3 - (10 * 60); 
    END IF; 
END; 

MySQL은 5 행에서 구문 오류가 SET 문에/직전,이 말한다. MySQL 5.0.27을 사용하고 있습니다. 나는 무엇이 잘못되었는지를 볼 수 없다. 예를 들면 in the manual 3/4s 아래에 주어진 예제와 거의 동일하다.

추신 : PhpMyAdmin의 SQL 탭에 입력하고 있습니다. "구분 기호"문을 추가하는 것은 도움이되지 않습니다. 모든 단서? 미리 감사드립니다!

+0

구분 기호 이외에 나에게 잘 보입니다. 5 번 줄은 첫 번째 세미콜론으로, 나에게 "단락 문자"라고 다시 말하지만, P.S.를 입력하면됩니다. 답변으로 게시하지 않겠습니다. –

답변

0

찾았습니다. 분명히 PhpMyAdmin은 SQL 쿼리의 일부로 입력 될 때 MySQL의 구분 기호 명령을 무시합니다. 대신 SQL 쿼리 아래에 별도의 양식 필드에 구분 기호를 설정해야합니다. 나는 그것을 완전히 놓쳤다!