2016-08-13 4 views
-2

삽입 작업 전에 트리거가 발생했습니다. 이제는 전혀 작동하지 않습니다.MySql 트리거가 실행되지 않음 (모두)

테이블 복사 & 다른 데이터베이스로 트리거하면 정상적으로 작동합니다.

트리거를 모두 togther로 다시 만들려고했지만 변경이 없습니다. STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION : 나는 INFORMATION_SCHEMA 보면

, 나는 problematc 트리거가 모두 다른 사람에 비해 NO_AUTO_VALUE_ON_ZERO입니다 SQL_MODE 값에 다른 사람과 다른 것을 볼, 테이블을 트리거합니다.

이것이 모두 원인입니까?

+0

방아쇠를 처음부터 다시 만들었으므로 NO_AUTO_VALUE_ON_ZERO이 (가) STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION이되어 문제의 원인이 아닌 것으로 보입니다. 변화가 없으며 발사되지 않습니다. –

+0

http://shrani.si/f/1U/11W/24T9L4ON/tmp.jpg –

+0

추가 : SELECT @@ sql_mode는 문제가있는 서버의 경우 STRICT_TRANS_TABLES, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION을 반환하고 모두 괜찮 으면 서버의 빈 문자열을 반환합니다. –

답변

0

트릭은 다음과 같습니다

#Set the SQL mode to strict 
#comented, coz strict blocks insert althought key field is filled on before insert trigger 
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 

다시 서버입니다.

관련 문제