Как добавить/удалить индекс в таблице MySql?

Добавление и удаление индексов в таблице mysql. Добавление индексов в существующую таблицу осуществляется при помощи оператора ALTER TABLE и следующими ключевыми совами

Как добавить/удалить индекс в таблице MySql?

» » Сообщение:

Добавление индексов в существующую таблицу осуществляется при помощи оператора ALTER TABLE и следующими ключевыми совами:

Код: Выделить всё Развернуть
ADD INDEX [name_index] (field_of_index) - обычный индекс
ADD UNIQUE [name_index] (field_of_index) - уникальный индекс
ADD PRIMARY KEY (field_of_index) - первичный индекс
ADD FULLTEXT [name_index] (field_of_index) - полнотекстный индекс

В field_of_index может указываться сразу несколько полей.

Пример 1:
В этом примере будет создан первичный индекс для поля id

Код: Выделить всё Развернуть
<?php
$connection = new mysqli("localhost","root","",'mybase');
$query = "alter table auto add primary key(id)";
$result = $connection->query($query);
?>

Пример 2:
Здесь будет создан обычный индекс для полей year и distance

Код: Выделить всё Развернуть
<?php
$connection = new mysqli("localhost","root","",'mybase');
$query = "alter table auto add index ind_year(year,distance)";
$result = $connection->query($query);
?>

Удаление индексов

За удаление индексов отвечают следующие ключевые слова:

drop primary key - удаление первичного индекса
drop index name_index - удаление обычного, уникального и полнотекстового индекса.

Пример 3:
В этом примере будут удален первичный индекс созданный в примере 1.

Код: Выделить всё Развернуть
<?php
$connection = new mysqli("localhost","root","",'mybase');
$query = "alter table auto drop primary key";
$result = $connection->query($query);
?>

Пример 4:
В этом примере будут индекс созданный в примере 2.

Код: Выделить всё Развернуть
<?php
$connection = new mysqli("localhost","root","",'mybase');
$query = "alter table auto drop index ind_year";
$result = $connection->query($query);
?>

---

© www.phptown.ru

add, index, unique, primary, fulltext, field_of_index, mysqli, alter, table, индекс, таблица, уникальный

Re: Как добавить/удалить индекс к полям в таблице MySql?

Admin » » Сообщение:

Код: Выделить всё Развернуть
SHOW INDEX FROM `dle_post_extras`; // Посмотреть существующие индексы
ALTER TABLE `dle_post_extras` DROP INDEX `news_id`; // Удалить индекс
ALTER TABLE `dle_post_extras` ADD UNIQUE INDEX `news_id` (news_id); // Создать уникальный индекс
ALTER TABLE `phpbb_blogs` ADD FULLTEXT INDEX `blog_tags` (blog_tags); // Создать полнотестовый индекс




Похожие темыКомментарии ПросмотрыПоследнее сообщение
0951MySQL Проблема с кодировкой. Вместо...
Сообщение от: Admin
0329Как составить запрос случайной выбо...
Сообщение от: Admin
0601Кузнецов М.В., Симдянов И.В. MySQL ...
Сообщение от: Admin
0312Удаление дубликатов строк из таблиц...
Сообщение от: Admin
0342Какие ошибки не нужно допускать в M...
Сообщение от: Admin