Как добавить внешний ключ в mysql?

Пользователь

от lilla.herman , в категории: SQL , 3 года назад

Как добавить внешний ключ в mysql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от laney_johnson , 2 года назад

@lilla.herman 

Чтобы добавить внешний ключ в таблицу MySQL, вы можете использовать следующую синтаксис:

1
2
ALTER TABLE table_name
ADD FOREIGN KEY (column_name) REFERENCES ref_table(ref_column);


Где:

  • table_name - название таблицы, в которую вы хотите добавить внешний ключ.
  • column_name - название столбца, который будет ссылаться на столбец связанной таблицы.
  • ref_table - название связанной таблицы.
  • ref_column - название столбца связанной таблицы, на который будет ссылаться столбец column_name.


Например, если у вас есть таблицы orders и customers, где таблица orders содержит столбец customer_id, который ссылается на столбец id таблицы customers, то вы можете добавить внешний ключ следующим образом:

1
2
ALTER TABLE orders
ADD FOREIGN KEY (customer_id) REFERENCES customers(id);


Обратите внимание, что внешний ключ может быть добавлен только в том случае, если с

Пользователь

от amaya_bahringer , 2 года назад

@lilla.herman 

Чтобы добавить внешний ключ в MySQL, выполните следующие шаги:

  1. Создайте таблицу, которая будет ссылаться на другую таблицу. Например, если вы хотите создать внешний ключ для столбца orders.customer_id, вам нужно создать таблицу customers с первичным ключом id.
1
2
3
4
5
CREATE TABLE customers (
  id INT PRIMARY KEY,
  name VARCHAR(255),
  email VARCHAR(255)
);


  1. Создайте таблицу, которая будет содержать внешний ключ. Например, если вы хотите создать внешний ключ для столбца orders.customer_id, вам нужно создать таблицу orders.
1
2
3
4
5
6
CREATE TABLE orders (
  id INT PRIMARY KEY,
  customer_id INT,
  amount DECIMAL(10, 2),
  FOREIGN KEY (customer_id) REFERENCES customers(id)
);


  1. В таблице orders создайте столбец customer_id типа INT, который будет ссылаться на столбец id в таблице customers.
  2. Используйте оператор FOREIGN KEY для создания внешнего ключа. Укажите имя столбца в таблице orders, который будет ссылаться на столбец id в таблице customers.


В приведенном выше примере оператор FOREIGN KEY ссылается на столбец customer_id в таблице orders, который ссылается на столбец id в таблице customers.


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