1

关于 OPTIMIZE TABLE COMMAND 的作用有几个问题。我知道这有助于清除碎片表中可能存在的开销。对我来说,有时我需要运行它,我想创建一个视图来从 django 中运行这些命令。

最好的方法是使用原始 SQL 还是有其他的 django orm 来帮助它?

4

2 回答 2

2

原始 SQL 是要走的路。

from django.db import connections, transaction
cursor = connections['default'].cursor()
cursor.execute('OPTIMIZE TABLE;')
transaction.commit_unless_managed(using='my_db_alias')
于 2011-08-29T02:49:15.547 回答
0

最好的方法是直接执行自定义 sql

但是通过应用程序对这种系统或数据库进行管理是非常危险的;如果该命令出现问题,您的 django 应用程序可能会脱机,同时使用您的数据库管理工具。

于 2011-08-29T02:49:07.867 回答