Поиск по сайту:
Сомнение — отчаяние мысли; отчаяние — сомнение личности (С. Кьеркегор).

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

31.12.2020
Новые функции регулярных выражений в MySQL 8.0

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 установлен как первичный ключ таблицы.

Читать  Как обновить WordPress до MySQL 8 на CentOS

 

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

Вместо добавления, если мы хотим удалить или отбросить первичный ключ, используется команда 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;

 

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

Читать  Функция RANK в MySQL

 

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

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

ALTER TABLE books
ADD FOREIGN KEY (author_id) REFERENCES authors(author_id);

 

DESC books;

 

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

 

Резюме

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Виктор

“Первичный ключ с помощью команды ALTER TABLE” – неверно. “Внешний ключ с помощью команды ALTER TABLE” – верно.

Это может быть вам интересно


Рекомендуемое
Возможно, вы слышали или даже встречали дистрибутив Linux, использующий Wayland,…

Спасибо!

Теперь редакторы в курсе.