У меня есть эта модель -
class Table(models.Model):
name = models.CharField(max_length=100, unique=True)
status = models.IntegerField(default=0)
У меня здесь нет db_index=True
, поэтому в идеале не должно быть никаких созданных таблиц индекса.Но вот что я получаю, когда запускаю SELECT * FROM pg_indexes WHERE tablename = 'Schema_table';
-
schemaname | tablename | indexname | tablespace | indexdef
public | Schema_table | Schema_table_name_ad77b83a_like | | CREATE INDEX "Schema_table_name_ad77b83a_like" ON "Schema_table" USING btree (name varchar_pattern_ops)
public | Schema_table | Schema_table_name_key | | CREATE UNIQUE INDEX "Schema_table_name_key" ON "Schema_table" USING btree (name)
public | Schema_table | Schema_table_pkey | | CREATE UNIQUE INDEX "Schema_table_pkey" ON "Schema_table" USING btree (id)
(3 rows)
. Я могу понять, почему будет индекс для первичного ключа (pkey
), но почему остальные?Если я правильно понимаю, каждый раз, когда объект создается / обновляется, соответствующая индексная таблица также обновляется.Означает ли это, что для каждой операции записи в эту таблицу у меня будет всего 4 операции записи (1 для фактической записи в таблицу и 3 для таблиц индекса)?