У цій статті ми дізнаємося, як додати зовнішній ключ до стовпця в таблиці нашої бази даних SQL.
The ЗОВНІШНІЙ КЛЮЧ у SQL використовується для об’єднання запису двох таблиць у базі даних. Стовпець, визначений як ЗОВНІШНИЙ КЛЮЧ в одній таблиці, повинен бути ПЕРВИННИМ КЛЮЧОМ в іншій таблиці тієї ж бази даних.
Ми можемо легко додати зовнішній ключ до стовпця наступними двома способами:
- Додайте зовнішній ключ за допомогою оператора Create table
- Додайте зовнішній ключ за допомогою оператора Alter Table
Якщо ви хочете додати ЗОВНІШНИЙ КЛЮЧ до стовпця в таблиці SQL, ви повинні виконати наведені нижче кроки в наведеній послідовності:
- Створіть базу даних у системі.
- Створіть дві таблиці в одній базі даних.
- Переглянути структуру таблиці перед додаванням зовнішнього ключа.
- Додайте зовнішній ключ до таблиці.
- Перегляньте структуру таблиці.
Тепер ми пояснимо описані вище дії на прикладі:
Крок 1: Створіть базу даних
У мові структурованих запитів створення бази даних є першим кроком для зберігання структурованих таблиць у базі даних.
Для створення бази даних використовуйте такий синтаксис SQL:
CREATE DATABASE Database_Name;
Припустімо, ви хочете створити Транспортні засоби бази даних. Для цього вам потрібно ввести таку команду мовою структурованих запитів:
CREATE DATABASE Vehicles;
Крок 2: Створіть дві таблиці в базі даних
Тепер ви повинні використовувати наступний синтаксис SQL для створення таблиць у своїй базі даних:
CREATE TABLE table_name ( column_Name_1 data type (size of the column_1), column_Name_2 data type (size of the column_2), column_Name_3 data type (size of the column_3), ... column_Name_N data type (size of the column_1) );
Наступний SQL-запит створює Автомобілі_Деталі таблиці в Транспортні засоби бази даних.
CREATE TABLE Cars_Details ( Car_Number INT AUTO_INCREMENT PRIMARY KEY, Model INT, Cars_Name VARCHAR (20), Colour VARCHAR (20), );
Створюється наступний запит Автомобілі_Ціна_Деталі таблиці в Транспортні засоби база даних:
CREATE TABLE Cars_Price_Details ( Model INT NOT NULL PRIMARY KEY, Cars_Price INT NOT NULL );
Крок 3: Перегляньте структуру таблиці перед додаванням зовнішнього ключа
Після створення таблиці та вставки даних ви можете переглянути структуру обох таблиць, ввівши такий запит у своїй програмі SQL:
DESC Cars or DESCRIBE Cars ;
Поле | Тип | НУЛЬ | ключ | За замовчуванням | Екстра |
---|---|---|---|---|---|
Номер_автомобіля | ІНТ | НІ | AT | НУЛЬ | auto_increment |
Модель | ІНТ | Так | - | НУЛЬ | - |
Car_Name | Варчар(20) | Так | - | НУЛЬ | |
Колір | Варчар(20) | Так | - | НУЛЬ | - |
DESC Cars_Price_Details;
Поле | Тип | НУЛЬ | ключ | За замовчуванням | Екстра |
---|---|---|---|---|---|
Модель_автомобіля | ІНТ | Немає | AT | НУЛЬ | - |
Car_Price | ІНТ | Немає | - | НУЛЬ |
Крок 4. Додайте зовнішній ключ до стовпця в таблиці
Якщо ви хочете додати зовнішній ключ під час створення таблиці, ви повинні використовувати наступний синтаксис CREATE TABLE у SQL:
CREATE TABLE table_name1 ( Column_Name_1 data type (size of the column_1), Column_Name_2 data type (size of the column_2), ......, Column_Name_N data type (size of the column_N) FOREIGN KEY REFERENCES Table_Name2 (Column_Name) ) ;
приклад
Наступний запит додає FOREIGN KEY у стовпець «Model» у таблиці Cars_Details:
CREATE TABLE Cars_Details ( Car_Number INT AUTO_INCREMENT, Model INT FOREIGN KEY REFERENCES Cars_Price_Details (Car_Model), Cars_Name VARCHAR (20), Color VARCHAR (20) UNIQUE, Price INT NOT NULL ) ;
Цей запит у SQL об'єднується the Cars_Details таблиця з Автомобілі_Ціна_Деталі таблицю за допомогою зовнішнього ключа.
Крок 5: Перегляньте структуру таблиці після додавання зовнішнього ключа
Для перевірки результату запиту, виконаного в 4тискрок, вам потрібно ввести таку команду DESC у SQL:
DESC Cars_Details;
Поле | Тип | НУЛЬ | ключ | За замовчуванням | Екстра |
---|---|---|---|---|---|
Номер_автомобіля | ІНТ | Так | ПЕРВИННИЙ | НУЛЬ | auto_increment |
Модель | ІНТ | Немає | ІНОЗЕМНІ | НУЛЬ | - |
Car_Name | Варчар(20) | Так | - | НУЛЬ | - |
Колір | Варчар(20) | Так | - | НУЛЬ | - |
Ціна | ІНТ | НІ | - | НУЛЬ | - |
Середній | ІНТ | НІ | - | 0 | - |
Як показано у вихідних даних вище, стовпець Model створюється як зовнішній ключ.
Додайте зовнішній ключ до наявної таблиці
Якщо ви хочете додати зовнішній ключ до існуючої таблиці, вам потрібно використовувати такий синтаксис ALTER у SQL:
ALTER TABLE Table_Name1 ADD CONSTRAINT ForeignKey_Name FOREIGN KEY (Column_Name) REFERENCES Table_Name2 (Column_Name);
Наступний запит додає FOREIGN KEY у стовпець Model, коли таблиця Cars_Details уже існує в системі бази даних:
ALTER TABLE Cars_Details ADD CONSTRAINT FK_Cars_Details FOREIGN KEY (Model) REFERENCES Cars_Price_Details (Car_Model);
Цей запит ALTER у SQL приєднується the Cars_Details таблиця з Автомобілі_Ціна_Деталі таблицю за допомогою зовнішнього ключа.
Видалити зовнішній ключ із таблиці
Якщо ви хочете видалити зовнішній ключ зі стовпця таблиці, вам потрібно скористатися наступним ЗМІНИТИ синтаксис у SQL:
ALTER TABLE Table_Name DROP FOREIGN KEY Foreign_Key_Name;
Наступний запит видаляє створений FOREIGN KEY зі стовпця Model таблиці Cars_Details:
ALTER TABLE Cars DROP FOREIGN KEY FK_Cars_Details;