Django模型,InnoDB中的表

2024-09-28 22:56:54 发布

您现在位置:Python中文网/ 问答频道 /正文

为了让Django在MySQL中输出innodb表,您需要

  1. 将所有表输出为innodb或
  2. 有选择地发出alter table命令

第一种是次优的(MyISAM对于查询占主导地位的表更快),第二种则是一种痛苦和骇人听闻的方法。在

还有别的办法吗?在

更新:让我的问题更加清晰- 我希望Django最初创建的模型(或表)(使用syncdb)使用INNODB引擎(而不是MyISAM)。在我的数据库中,InnoDB中有一些表,MyISAM中有一些表。在Django我该怎么做?在


Tags: django方法模型引擎命令mysqltable办法
1条回答
网友
1楼 · 发布于 2024-09-28 22:56:54

这个页面应该是一个好的起点:http://code.djangoproject.com/wiki/AlterModelOnSyncDB

它记录了一种钩住post_syncdb钩子的方法,以动态地发出ALTERSQL命令来更改表的引擎。(请注意,这是4年前编写的,可能需要更新到Django的当前版本)。在

将元数据添加到模型中应该很简单,这样可以指定每个表使用哪个存储引擎。然后你可以修改上面的元数据。在

相关问题 更多 >