如何在sqlite数据库中创建触发器?

时间:2011-05-11 11:41:02

标签: sql sqlite

我必须在我的SQLite数据库中创建触发器。

数据库中有3个表

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

每当从question表中删除任何行时,也应从optionanswer表中删除相应的数据。

我正在尝试使用

创建触发器
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

我收到错误。我应该创建两个不同的触发器来执行此操作,还是需要在上述语句中进行任何更改?

请告诉我。

由于 尼迪

2 个答案:

答案 0 :(得分:2)

在第一个AND声明后删除DELETE

DELETE from options WHERE question_id = OLD.question_id;
DELETE from answers WHERE question_id = OLD.question_id;

答案 1 :(得分:0)

尝试用“;”替换“AND”并且你仍然得到一个错误,在这里发布错误的文本