如何在SQLite中创建禁用特定表删除的触发器?
这样就可以添加新行,但是您无法删除已经添加的行。
我遇到语法问题。
由于
更新
这是我的代码:
CREATE TRIGGER nodel_booksInventory_booklanguage DELETE on booklanguage
BEGIN
RAISE ( ABORT, "MY ERROR")
END
但它没有用。
我通过booklanguage.sqlite3.sql SQL文件添加它与Django中的manage.py syncdb。
答案 0 :(得分:1)
根据documentation,您只能在触发器主体中使用UPDATE / DELETE / INSERT / SELECT语句。
要使用RAISE功能,请将其包装在SELECT:
中CREATE TRIGGER nodel_booksInventory_booklanguage
BEFORE DELETE ON booklanguage
BEGIN
SELECT RAISE(ABORT, 'my error');
END;