2016-10-21 3 views
0
CREATE TRIGGER insertCompanyUser AFTER INSERT ON userinfo 
FOR EACH ROW 
    BEGIN 
    IF New.companyId is not null THEN 
     INSERT INTO `tb_companyuser` (`id`, `companyId`, `userId`, `freeze`, `role`, `createDate`, `updateDate`) VALUES (NULL, New.companyId, New.id, b'00000', '1', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP) 
    END IF 
    END 

오류 ==> 1064 MariaDB 서버 버전에서 트리거에 만약 조건에 사용할 - 당신은 당신의 SQL 구문에 오류가 있습니다; 라인 6올바른 구문은

에서 나는 당신이했던 똑같은 문제가 있었다 enter image description here

답변

0

이 방법으로 시도 할 때 근처 ' END이 경우 END'를 사용할 수있는 권리 구문에 대한 귀하의 MariaDB 서버 버전에 해당하는 설명서를 확인 , 나는 모든 것을 시도했고 마침내 ";" (NEW. customer_id = '0')가 THEN tbl_user 세트 tbl_user를 업데이트하면 내 WHERE 문 뒤에

각 행 FOR = root tbl_transport ON UPDATE AFTER updater TRIGGER localhost @를 DEFINER을 만듭니다. user_requested_car = 거짓 어디서 tbl_user. user_email = NEW. customer_id; END IF;

+0

재밌는 점은 다시 똑같은 것을 시도했는데 실패했습니다. "SQL 구문에 오류가 있습니다. MariaDB 서버 버전에 해당하는 설명서를 확인하여 근처의 올바른 구문을 사용하십시오. 라인 5 ". 누군가 제발 도와주세요! – nada

관련 문제