В этом учебном пособии вы узнаете, как создать и удалить первичный ключ в MariaDB с синтаксисом и примерами.
Что такое первичный ключ в MariaDB?
В MariaDB первичный ключ - это отдельное поле или комбинация полей, однозначно определяющая запись. Ни одно из полей, являющихся частью первичного ключа, не может содержать значение NULL. Таблица может иметь только один первичный ключ.
Первичный ключ создается в MariaDB с помощью оператора CREATE TABLE или оператора ALTER TABLE.
Создать первичный ключ - с помощью оператора CREATE TABLE
Вы можете создать первичный ключ в MariaDB с помощью оператора CREATE TABLE.
Синтаксис
Синтаксис создания первичного ключа с помощью оператора CREATE TABLE в MariaDB:
(
column1 column_definition,
column2 column_definition,
..
CONSTRAINT [constraint_name]
PRIMARY KEY [ USING BTREE | HASH ] (column1, column2, .. column_n)
);
- table_name
- Имя таблицы, которую вы хотите создать.
- column1, column2
- Столбцы, которые вы хотите создать в таблице. Смотрите оператор CREATE TABLE MariaDB для более подробной информации синтаксис CREATE TABLE, так как это описание, демонстрирующее, как создать первичный ключ.
- constraint_name
- Название первичного ключа.
- column1, column2, .. column_n
- Столбцы, составляющие первичный ключ.
Пример
Рассмотрим пример того, как создать первичный ключ, используя инструкцию CREATE TABLE в MariaDB.
1 2 3 4 5 6 7 |
CREATE TABLE websites ( website_id INT(11) NOT NULL AUTO_INCREMENT, website_name VARCHAR(25) NOT NULL, server_name VARCHAR(20), creation_date DATE, CONSTRAINT websites_pk PRIMARY KEY (website_id) ); |
В этом примере мы создали первичный ключ для таблицы sites с именем website_pk Он состоит только из одного столбца - столбца website_id.
Мы также можем создать первичный ключ с более чем одним полем, как в примере ниже:
1 2 3 4 5 6 |
CREATE TABLE websites ( website_name VARCHAR(25) NOT NULL, server_name VARCHAR(20), creation_date DATE, CONSTRAINT websites_pk PRIMARY KEY (website_name, server_name) ); |
В этом примере создается первичный ключ с именем website_pk, который состоит из комбинации столбцов website_name и server_name. Поэтому каждая комбинация website_name и server_name должна быть уникальной в таблице website.
Создать первичный ключ - используя оператор ALTER TABLE
Вы можете создать первичный ключ в MariaDB с помощью оператора ALTER TABLE.
Синтаксис
Синтаксис создания первичного ключа с помощью оператора ALTER TABLE в MariaDB:
ADD CONSTRAINT [ constraint_name ]
PRIMARY KEY [ USING BTREE | HASH ] (column1, column2, .. column_n)
- table_name
- Имя таблицы для изменения.
- constraint_name
- Название первичного ключа.
- column1, column2, .. column_n
- Столбцы, составляющие первичный ключ.
Пример
Рассмотрим пример того, как создать первичный ключ, используя инструкцию ALTER TABLE в MariaDB.
1 2 3 |
ALTER TABLE websites ADD CONSTRAINT websites_pk PRIMARY KEY (website_id); |
В этом примере мы создали первичный ключ для существующей таблицы websites с именем website_pk. Он состоит из столбца website_id.
Мы также можем создать первичный ключ с более чем одним полем, как в примере ниже:
1 2 3 |
ALTER TABLE websites ADD CONSTRAINT websites_pk PRIMARY KEY (website_name, server_name); |
В этом примере мы создали первичный ключ с именем website_pk, который состоит из комбинации столбцов website_name и server_name.
Удалить первичный ключ
Вы можете удалить первичный ключ в MariaDB, используя инструкцию ALTER TABLE.
Синтаксис
Синтаксис удаления первичного ключа в MariaDB:
DROP PRIMARY KEY;
- table_name
- Имя таблицы для изменения.
Пример
Рассмотрим пример того, как удалить первичный ключ, используя инструкцию ALTER TABLE в MariaDB.
1 2 |
ALTER TABLE websites DROP PRIMARY KEY; |
В этом примере мы удалили первичный ключ из таблицы websites. Нам не нужно указывать имя первичного ключа, поскольку в таблице он может быть только один.