Python django型sqlite真空吸尘器
在sqlite中插入和删除大量记录后,sqlite db文件的大小不断增长,有没有办法使用django来处理这些表Python django型sqlite真空吸尘器,python,django,sqlite,vacuum,Python,Django,Sqlite,Vacuum,在sqlite中插入和删除大量记录后,sqlite db文件的大小不断增长,有没有办法使用django来处理这些表 允许sqlite自动吸尘的一些设置 或者手动将自己的django命令写入vacuum 更新: 我用于执行以下SQL: vacuum [my table]; commit; 它工作得很好,我只想用编程的方式执行它,您可以按如下方式执行原始sql: from django.db import connection, transaction cursor = connection.
- 允许sqlite自动吸尘的一些设置
- 或者手动将自己的django命令写入vacuum
vacuum [my table];
commit;
它工作得很好,我只想用编程的方式执行它,您可以按如下方式执行原始sql:
from django.db import connection, transaction
cursor = connection.cursor()
# Data modifying operation - commit required
cursor.execute("vacuum my_table")
transaction.commit_unless_managed()
不过,这有点有趣
也许我们可以将真空设置为自动,但看起来它可能会加剧碎片化
cursor.execute("PRAGMA auto_vacuum=FULL")
您可以按如下方式执行原始sql:
from django.db import connection, transaction
cursor = connection.cursor()
# Data modifying operation - commit required
cursor.execute("vacuum my_table")
transaction.commit_unless_managed()
不过,这有点有趣
也许我们可以将真空设置为自动,但看起来它可能会加剧碎片化
cursor.execute("PRAGMA auto_vacuum=FULL")
非常感谢,虽然我认为django模型元数据中有一些设置,但问题用django 1.8.3解决了,它需要
transaction.commit()
非常感谢,虽然我认为django模型元数据中有一些设置,但问题用django 1.8.3解决了,它需要transaction.commit()