请教下面这个哪里出错了呢~~~#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 7 CREATE TRIGGER trg_task
AFTER UPDATE ON projects
FOR EACH ROW
BEGIN
CASE NEW.project_status
WHEN 'COMPLETED' THEN
UPDATE tasks SET task_percent=100 WHERE project_id = NEW.project_id;
WHEN 'CANCELLED' THEN
UPDATE tasks SET task_percent=-1 WHERE project_id = NEW.project_id;
END CASE;
END

解决方案 »

  1.   

    DELIMITER $$
    CREATE TRIGGER trg_task
    AFTER UPDATE ON projects
    FOR EACH ROW
    BEGIN
    CASE NEW.project_status
    WHEN 'COMPLETED' THEN
    UPDATE tasks SET task_percent=100 WHERE project_id = NEW.project_id;
    WHEN 'CANCELLED' THEN
    UPDATE tasks SET task_percent=-1 WHERE project_id = NEW.project_id;
    END CASE;
    END$$
    DELIMITER ;
      

  2.   

    delimiter //
    CREATE TRIGGER trg_task
    AFTER UPDATE ON projects
    FOR EACH ROW
    BEGIN
    CASE NEW.project_status
    WHEN 'COMPLETED' THEN
    UPDATE tasks SET task_percent=100 WHERE project_id = NEW.project_id;
    WHEN 'CANCELLED' THEN
    UPDATE tasks SET task_percent=-1 WHERE project_id = NEW.project_id;
    END CASE;
    END

    //