0
我想通过添加db_index = True
将索引添加到已经存在的Django模型字段。相应的表在数据库中已经有很多数据。将db_index = True
添加到该字段后,是否会在使用新更改进行迁移后自动对这些值进行索引?将db_index = True添加到已具有大量数据的Django模型
我想通过添加db_index = True
将索引添加到已经存在的Django模型字段。相应的表在数据库中已经有很多数据。将db_index = True
添加到该字段后,是否会在使用新更改进行迁移后自动对这些值进行索引?将db_index = True添加到已具有大量数据的Django模型
理想情况下,是的。这会在你的sql表中创建一个索引。所以,只要你运行你的migrations
你的表就会添加索引。
如果您想尝试对其进行硬编码,您可以在您的迁移脚本中将其添加到转发方法中。它可能看起来像这样
db.execute("CREATE INDEX my_index on table_name(col_name)", params=[])
db在添加db_index = True后添加了索引后迁移。 –
它应该工作。但首先进行数据库备份。你可能需要添加你的'db_index = models.BooleanField(default = True)' – Tushortz