sqlite3 在触发器中执行 vacuum 时出现语法错误
sqlite3 got syntax error while executing vacuum in a trigger
我正在使用 sqlte3.8.8,试图创建一个触发器来清理旧数据。这是我输入的 SQL:
CREATE TRIGGER "main"."NewTrigger" AFTER INSERT ON "historydata"
BEGIN
delete from historydata where id in (select id from historydata order by id limit 100000);
vacuum;
END;
但我在 "vacuum;" 上遇到语法错误。但是,它在 sqlite 命令行中工作正常。
难道"vacuum"不能在触发器中使用?
documentation 表明触发器主体中只允许 UPDATE/INSERT/DELETE/SELECT 语句。
我正在使用 sqlte3.8.8,试图创建一个触发器来清理旧数据。这是我输入的 SQL:
CREATE TRIGGER "main"."NewTrigger" AFTER INSERT ON "historydata"
BEGIN
delete from historydata where id in (select id from historydata order by id limit 100000);
vacuum;
END;
但我在 "vacuum;" 上遇到语法错误。但是,它在 sqlite 命令行中工作正常。
难道"vacuum"不能在触发器中使用?
documentation 表明触发器主体中只允许 UPDATE/INSERT/DELETE/SELECT 语句。