ошибка синтаксиса SQL триггера Android - PullRequest
1 голос
/ 31 октября 2011

У меня есть приложение для Android, добавляющее значения в таблицу рекордов.Непосредственно перед добавлением я хочу создать триггер для удаления всех, кроме топ-10, если он еще не существует.Кто-нибудь знает, что с этим не так?Там написано, что синтаксическая ошибка около 'if'

"if exists (select * from sys.triggers where name = 'trig') 
BEGIN CREATE TRIGGER trig AFTER INSERT ON " + DB_TABLE + 
" BEGIN DELETE FROM " + DB_TABLE + " WHERE " + COL_NAME + 
" NOT IN (SELECT " + COL_NAME + " FROM " + DB_TABLE + 
" ORDER BY " + COL_SCORE + " DESC LIMIT 10); END; END;";

Любые идеи были бы удивительными.

1 Ответ

1 голос
/ 31 октября 2011

Я не знаю, допустим ли этот синтаксис, но в соответствии с документацией вы можете написать:

CREATE TRIGGER IF NOT EXISTS trig ....

Взгляните сюда: http://www.sqlite.org/lang_createtrigger.html

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