חוץ KEY - в одной таблице указывает на другой המפתח העיקרי.
יש שולחן "אנשים":
| P_Id | LastName | FirstName | Address | עיר |
|---|---|---|---|---|
| 1 | הנסן | אולה | Timoteivn 10 | Sandnes |
| 2 | Svendson | Tove | Borgvn 23 | Sandnes |
| 3 | Pettersen | קארי | Storgt 20 | Stavanger |
Есть таблица "הזמנות":
| O_Id | OrderNo | P_Id |
|---|---|---|
| 1 | 77895 | 3 |
| 2 | 44678 | 3 |
| 3 | 22456 | 2 |
| 4 | 24562 | 1 |
Заметим что колонка "P_Id" в таблице "הזמנות" указывает на "P_Id" в таблице "אנשים".
Колонка "P_Id" в таблице "אנשים" является המפתח העיקרי.
Колонка "P_Id" в таблице "הזמנות" является חוץ KEY.
חוץ KEY не позволяет вставлять неверные данные в колонку "P_Id" в таблице "הזמנות" и "אנשים".
SQL חוץ KEY Ограничения при CREATE TABLE
Следующие SQL создает חוץ KEY в колонке "P_Id", при создании таблицы "הזמנות":
MySQL:
SQL Server / Oracle / MS Access:
Можно распределить ограничитель חוץ KEY на несколько столбцов, для этого используйте следующий синтаксис SQL:
MySQL / SQL Server / Oracle / MS Access:
SQL חוץ KEY Ограничения при ALTER TABLE
Следующие SQL создает חוץ KEY в колонке "P_Id", когда таблица "הזמנות" уже создан:
MySQL / SQL Server / Oracle / MS Access:
1 2 3 |
ADD CONSTRAINT הזמנות ALTER לוח (P_Id) DROP אנשים(P_Id) |
Можно распределить ограничитель חוץ KEY на несколько столбцов, для этого используйте следующий синтаксис SQL:
MySQL / SQL Server / Oracle / MS Access:
1 2 3 4 |
ALTER לוח הזמנות DROP CONSTRAINT fk_Perהזמנות הוסף תגובה (P_Id) |
Удаление חוץ KEY
Для удаления ограничителя חוץ KEY используйте следующий SQL:
MySQL:
1 2 |
|
SQL Server / Oracle / MS Access:
1 2 |
|






2 s?