Первичные и внешние ключи MySQL

MySQL — это СУБД (система управления реляционными базами данных), которая принадлежит корпорации Oracle и унаследована от стандартного SQL. Это позволяет получить доступ и управлять базами данных. Тот, кто знает слово «База данных», должен знать первичный и внешний ключи. Не существует концепции реляционной базы данных без существования и идеи концепций первичных и внешних ключей. В этой статье мы узнаем о важности и правильном использовании первичных и внешних ключей в MySQL.

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

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

Давайте посмотрим на синтаксис и различные примеры для создания первичных и внешних ключей в MySQL.

Основные ключи

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

Первичный ключ при создании таблицы

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

Запрос на создание такой таблицы и создание столбца идентификатора столбца первичного ключа будет таким:

CREATE TABLE books (

book_id INT NOT NULL,

book_name VARCHAR(255) NOT NULL,

book_category VARCHAR(255),

PRIMARY KEY (book_id)

);

В этом синтаксисе мы можем определить ограничения в конце запроса.

DESC books;

В столбце ключа мы видим, что book_id установлен как первичный ключ таблицы.

Отбросить первичный ключ

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

ALTER TABLE books

DROP PRIMARY KEY;

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

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

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

ALTER TABLE books

ADD PRIMARY KEY (book_id);

Первичный ключ успешно добавлен. Теперь давайте лучше узнаем о внешних ключах.

Внешние ключи

Как и первичные ключи, внешние ключи могут быть определены при определении таблицы с помощью команды ALTER TABLE.

Внешний ключ при создании таблицы

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

DESC authors;

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

CREATE TABLE books (

book_id INT NOT NULL,

book_name VARCHAR(255) NOT NULL,

book_category VARCHAR(255),

author_id INT,

PRIMARY KEY (book_id),

FOREIGN KEY (author_id) REFERENCES authors(author_id)

);

Отбросьте внешний ключ

Удаление внешнего ключа — это не то же самое, что удаление первичного ключа. Сначала мы должны получить имя ограничений, выполнив команду «SHOW CREATE TABLE books».

SHOW CREATE TABLE books;

Затем укажите имя ограничения для команды ALTER TABLE следующим образом:

ALTER TABLE books

DROP FOREIGN KEY books_ibfk_1;

Вот как мы можем создавать и удалять внешний ключ в таблице.

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

Для создания внешнего ключа в существующей таблице с помощью команды ALTER TABLE,

ALTER TABLE books

ADD FOREIGN KEY (author_id) REFERENCES authors(author_id);
DESC books;

Мы видим, что author_id успешно установлен в качестве внешнего ключа.

Резюме

Мы узнали о сути и концепциях первичных и внешних ключей. А также создание, добавление и удаление первичного или внешнего ключа в таблице.

Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!