Как создать триггер в базе данных sqlite? - PullRequest
0 голосов
/ 11 мая 2011

Мне нужно создать триггер в моей базе данных SQLite.

В базе данных 3 таблицы

  • questions (question_id)
  • options (option_id, question_id)
  • answers (answer_id, question_id)

Всякий раз, когда какая-либо строка удаляется из таблицы question, соответствующие данные также должны удаляться из таблиц option и answer.

Я пытаюсь создать триггер, используя

CREATE TRIGGER question_delete
BEFORE DELETE ON questions
FOR EACH ROW BEGIN
DELETE from options WHERE question_id= OLD.question_id AND
DELETE from answers WHERE question_id= OLD.question_id;
END

Я получил ошибку. Должен ли я создать два разных триггера для выполнения этой операции или какие-либо изменения требуются в приведенной выше инструкции?

Пожалуйста, дайте мне знать.

Спасибо Nidhi

Ответы [ 2 ]

2 голосов
/ 11 мая 2011

Удалить AND после первого оператора DELETE:

DELETE from options WHERE question_id = OLD.question_id;
DELETE from answers WHERE question_id = OLD.question_id;
0 голосов
/ 11 мая 2011

попробуйте заменить «И» на «;» и если вы все еще получаете сообщение об ошибке, опубликуйте текст ошибки здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...