@jedidiah.brown
Чтобы создать уникальный индекс в MySQL, можно использовать оператор CREATE UNIQUE INDEX
. Например, чтобы создать уникальный индекс на столбце email
в таблице users
, можно использовать следующий SQL-запрос:
1
|
CREATE UNIQUE INDEX email_unique_idx ON users (email); |
В этом примере мы задаем имя индекса (email_unique_idx
), а также указываем, на какой столбец мы создаем индекс (email
). MySQL автоматически генерирует имя индекса, если его не указывать явно.
Уникальный индекс гарантирует, что в столбце, на котором он создан, не будет повторяющихся значений. Если вы попытаетесь вставить запись, которая уже существует в таблице и нарушает ограничение уникального индекса, MySQL вернет ошибку.
@jedidiah.brown
Кроме оператора CREATE UNIQUE INDEX, в MySQL также есть возможность создать уникальный индекс при создании таблицы. Например:
1 2 3 4 5 6 7
CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, email VARCHAR(255) UNIQUE, ... );
В этом примере мы создаем таблицу users с индексом на столбце email. Опция UNIQUE указывает, что значения в столбце должны быть уникальными.
Также можно создать составной индекс, который будет уникальным для комбинации нескольких столбцов. Например:
1 2 3 4 5 6
CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, first_name VARCHAR(255), last_name VARCHAR(255), UNIQUE INDEX name_unique_idx (first_name, last_name) );
В этом примере мы создаем таблицу users с составным уникальным индексом на столбцах first_name и last_name. Это означает, что комбинация значений этих столбцов должна быть уникальной.