Latest web development tutorials

индекс SQLite

Индекс (Index) является специальной таблицы поиска, поиск в базе данных двигателя используется для ускорения поиска данных. Проще говоря, индекс представляет собой указатель на данные в таблице. Индекс базы данных книги позади индекса очень похож.

Например, если вы хотите, чтобы обсудить конкретную тему в книге все страницы ссылаются, в первую очередь необходимо указать индекс, алфавитный список всех тем, а затем указать на одну или более определенного числа страниц.

Индексы позволяют быстро SELECT, запрос и условие WHERE, но это приведет к замедлению ввода данных с помощью UPDATE и INSERT заявления, когда. Индекс может быть создан или удален, но не повлияет на данные.

Создать индекс с помощью CREATE INDEX заявление, которое позволяет назвать индекс, необходимо указать таблицу для индексирования и один или несколько столбцов, а также указывает индекс по возрастанию или по убыванию.

Индекс может быть уникальным, и подобное ограничение уникальности для предотвращения дублирования записей в столбце или комбинации столбцов.

Команда CREATE INDEX

CREATE INDEX Базовый синтаксис выглядит следующим образом :

CREATE INDEX index_name ON table_name;

Отдельный индекс

Индекс основан на только один индекс на списке созданного. Базовый синтаксис выглядит следующим образом:

CREATE INDEX index_name
ON имя_таблицы (имя_столбца);

Уникальный индекс

Использование уникального индекса не только для работы, но и целостность данных. Уникальный индекс не допускает никаких повторяющихся значений в таблицу. Базовый синтаксис выглядит следующим образом:

CREATE UNIQUE INDEX index_name
on table_name (column_name);

композитный индекс

Индекс Состав основан на двух или нескольких столбцах таблицы, созданной. Базовый синтаксис выглядит следующим образом:

CREATE INDEX index_name
на table_name (column1, Столбец2);

Вы хотите, чтобы создать отдельный индекс является составным индексом, принимая во внимание очень часто в ваших условий фильтрации запросов в столбцах ИНЕКЕ.

Если значение использования колонки, предпочитают использовать отдельный индекс. Если есть фильтр в предложении WHERE часто используют два или более столбцов, а затем решили использовать комбинацию индекса.

Подразумеваемый индекс

Подразумеваемый индекс является то, что при создании объекта, автоматически создается сервером базы данных. Индексы автоматически создаются в качестве первичного ключа ограничения и ограничения уникальности.

примеров

Вот пример, мы создадим индекс таблицы заработной платы колонки КОМПАНИИ:

SQLite> CREATE INDEX salary_index о компании (заработной платы);

Теперь, давайте использовать.indices команда выводит список всех доступных индексов на таблице компании следующим образом :

SQLite> .indices КОМПАНИЯ

Это дает следующие результаты, которыеsqlite_autoindex_COMPANY_1неявный индекс создается при создании таблицы.

salary_index
sqlite_autoindex_COMPANY_1

Вы можете перечислить все диапазоны базы данных индекса, следующим образом:

SQLite> SELECT * FROM sqlite_master где тип = 'Индекс';

Команда DROP INDEX

Индекс может использовать команду SQLiteDROP для удаления.Особое внимание должно быть, если удалить индекс, так как производительность может уменьшаться или увеличиваться.

Базовый синтаксис выглядит следующим образом:

DROP INDEX index_name;

Вы можете использовать следующую инструкцию, чтобы удалить индекс, созданный ранее:

SQLite> DROP INDEX salary_index;

При каких обстоятельствах, чтобы избежать использования индекса?

Хотя индекс является повышение производительности базы данных, но здесь несколько случаев необходимость избегать использования индекса. При использовании индекса, следующие принципы должны быть пересмотрены:

  • Индекс не должен использоваться на небольших таблицах.

  • Индекс не следует использовать в больших количествах есть частые обновления и операция вставки таблицы.

  • Индекс не должен использоваться в столбце содержит большое количество нулевых значений.

  • Индекс не должен использоваться на частой работе колонны.