Удалить строку с помощью Mysql Trigger - PullRequest
5 голосов
/ 26 августа 2011

нужно сделать триггер после вставки в таблицу с именем jos_jquarks_quizzes, мне нужно создать имя курса, которое будет иметь то же имя, что и имя опроса, но его собственный идентификатор,

Таблица

jos_jquarks_quizzes 

id     title     description     course_id 

jos_jquarks_users_training   
id     quiz_id     user_id     agree 

Пока что My Trigger выглядит так, но имеет ошибку

-- Trigger DDL Statements
DELIMITER $$

USE `db_dhruniversity`$$

CREATE
TRIGGER `db_dhruniversity`.`ai_delete_course`
AFTER DELETE ON `jos_jquarks_quizzes`
FOR EACH ROW
BEGIN    
DELETE FROM jos_jquarks_courses
WHERE (quiz_id = new.id); 
END$$

1 Ответ

8 голосов
/ 26 августа 2011

В вашем предложении where измените new.id на old.id

-- Trigger DDL Statements
DELIMITER $$

USE `db_dhruniversity`$$

CREATE
TRIGGER `db_dhruniversity`.`ai_delete_course`
AFTER DELETE ON `jos_jquarks_quizzes`
FOR EACH ROW
BEGIN    
DELETE FROM jos_jquarks_courses
WHERE (quiz_id = old.id); 
END$$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...