Primary Keys MySQL

В этом учебном пособии вы узнаете, как создавать и удалять Primary Keys
(первичный ключ) в MySQL
с синтаксисом и примерами.

Описание

В MySQL Primary Keys представляет собой одно поле или комбинацию полей, которые определяют уникальную запись. Поля, которые являются частью первичного ключа, не могут содержать значение NULL. В таблице может быть только один первичный ключ.

Примечание

  • В MySQL первичный ключ создается с помощью оператора CREATE TABLE или оператора ALTER TABLE.
  • Вы используете оператор ALTER TABLE в MySQL для удаления, отключения или включения первичного ключа.

Создание первичного ключа с использованием оператора CREATE TABLE

Вы можете создать первичный ключ в MySQL с помощью оператора CREATE TABLE.

Синтаксис

Синтаксис создания первичного ключа с использованием оператора CREATE TABLE в MySQL:

CREATE TABLE table_name
(
column1 column_definition,
column2 column_definition,
...

CONSTRAINT [constraint_name]
PRIMARY KEY [ USING BTREE | HASH ] (column_1, column_2, ... column_n)
);

Параметры или аргументы

table_name - имя таблицы, которую вы хотите создать.
column1, column2 - столбцы, которые вы хотите создать в таблице. См. MySQL оператор CREATE TABLE для более подробного синтаксиса CREATE TABLE, поскольку это чрезмерное упрощение, чтобы продемонстрировать, как создать PRIMARY KEY.
constraint_name - имя первичного ключа.
column_1, column_2, ... column_n - колонки, составляющие первичный ключ.

Пример

Рассмотрим пример создания первичного ключа с помощью оператора CREATE TABLE в MySQL.

В этом примере мы создали первичный ключ в таблице contacts, называемой contact_pk. Он состоит только из одного столбца - contact_id.

Мы могли бы также создать первичный ключ с несколькими полями, как в приведенном ниже примере:

В этом примере создается первичный ключ с именем contacts_pk, состоящий из комбинации столбцов last_name и first_name. Поэтому каждая комбинация last_name и first_name должна быть уникальной в таблице contacts.

Создать первичный ключ - с помощью оператора ALTER TABLE

Вы можете создать первичный ключ в MySQL с помощью оператора ALTER TABLE.

Синтаксис

Синтаксис создания первичного ключа с использованием оператора ALTER TABLE в MySQL:

ALTER TABLE table_name
ADD CONSTRAINT [ constraint_name ]
PRIMARY KEY [ USING BTREE | HASH ] (column1, column2, ... column_n);

Параметры или аргументы

table_name - имя таблицы для изменения.
constraint_name - имя первичного ключа.
column1, column2, ... column_n - колонки, составляющие первичный ключ.

Пример

Рассмотрим пример создания первичного ключа с использованием оператора ALTER TABLE в MySQL.

В этом примере мы создали первичный ключ в существующей таблице contacts, называемой contact_pk. Он состоит из столбца contact_id.

Мы могли бы также создать первичный ключ с несколькими полями, как в приведенном ниже примере:

В этом примере мы создали первичный ключ, называемый contacts_pk, который состоит из комбинации столбцов last_name и first_name.

Удалить первичный ключ

Вы можете удалить первичный ключ в MySQL с помощью оператора ALTER TABLE.

Синтаксис

Синтаксис для удаления первичного ключа в MySQL:

ALTER TABLE table_name
DROP PRIMARY KEY;

table_name - имя таблицы для изменения.

Пример

Рассмотрим пример того, как удалить первичный ключ с помощью оператора ALTER TABLE в MySQL.

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