我正在使用SQLite数据库来存储来自数据记录器的值。数据记录器最终将填满计算机上所有可用的硬盘空间。我正在寻找一种方法,一旦达到某个限制,就会从数据库中删除最后25%的日志。SQLite删除数据库中最后25%的记录
使用下面的代码:
$ret = Query('SELECT id as last FROM data ORDER BY id desc LIMIT 1 ;');
$last_id = $ret[0]['last'] ;
$ret = Query('SELECT count(*) as total FROM data');
$start_id = $last_id - $ret[0]['total'] * 0.75 ;
Query('DELETE FROM data WHERE id < '. round($start_id, 0));
一个日志文件被旁边,直到脚本失败,填补了硬盘上的剩余空间数据库中创建。
如何/我可以停止创建此日志文件? 无论如何将所有三个SQL查询合并到一个语句中?