Введение в индексы в Laravel
Когда в таблице много записей, поиск по полю без индекса может работать медленно. База данных просматривает строки одну за другой. Индекс ускоряет такой поиск - как алфавитный указатель в книге.
В Laravel индексы создают прямо
в миграциях - при создании таблицы
или при её изменении через
Schema::table. Отдельно
в PMA их обычно не добавляют.
Основные типы индексов:
-
primary- первичный ключ, задается черезidилиincrements -
unique- уникальный индекс, значения в колонке не повторяются -
index- обычный индекс для ускорения поиска
Модификатор unique на поле -
это тоже уникальный индекс. В этом
разделе разберем, как создавать
и удалять индексы отдельными
методами и комбинировать несколько
колонок.
Зачем нужны индексы в таблице с большим числом записей?
Чем первичный ключ отличается от обычного индекса?