НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
136 of 150 menu

Команда FOREIGN KEY

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

Синтаксис

CREATE TABLE table_name ( column_name data_type, FOREIGN KEY (column_name) REFERENCES parent_table(parent_column) )

Таблицы для примеров

users
id email name
1 ivan@example.com Ivan
2 olga@example.com Olga
3 sergey@example.com Sergey

Пример

Давайте создадим таблицу orders со связью с таблицей users по внешнему ключу user_id:

CREATE TABLE orders ( id INT PRIMARY KEY, user_id INT, amount INT, FOREIGN KEY (user_id) REFERENCES users(id) )

Результат выполнения кода:

id user_id amount
1 1 1500
2 2 2300
3 1 800

Пример

Давайте добавим внешний ключ в уже существующую таблицу orders с помощью ALTER TABLE:

ALTER TABLE orders ADD FOREIGN KEY (user_id) REFERENCES users(id)

Пример

Давайте создадим таблицу profiles со связью по уникальному полю email:

CREATE TABLE profiles ( id INT PRIMARY KEY, email VARCHAR(255), city VARCHAR(100), FOREIGN KEY (email) REFERENCES users(email) )

Результат выполнения кода:

id email city
1 ivan@example.com Moscow
2 olga@example.com Saint Petersburg
3 sergey@example.com Kazan

Смотрите также

  • команду PRIMARY KEY,
    которая задаёт ключ родительской таблицы
  • команду UNIQUE,
    которая обеспечивает уникальность значений
  • команду CREATE TABLE,
    которая создаёт таблицу со связями
  • команду ALTER TABLE,
    которая добавляет ограничение связи
  • команду JOIN,
    которая соединяет таблицы по связанным полям
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить