SQL FOREIGN KEY constraint
- الصفحة السابقة مفتاح رئيسى لاسكويلى
- الصفحة التالية تأكد من صحة لاسكويلى
SQL FOREIGN KEY constraint
一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。
让我们通过一个例子来解释外键。请看下面两个表:
"Persons" 表:
Id_P | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
"Orders" 表:
Id_O | OrderNo | Id_P |
---|---|---|
1 | 77895 | 3 |
2 | 44678 | 3 |
3 | 22456 | 1 |
4 | 24562 | 1 |
请注意,"Orders" 中的 "Id_P" 列指向 "Persons" 表中的 "Id_P" 列。
"Persons" 表中的 "Id_P" 列是 "Persons" 表中的 PRIMARY KEY。
"Orders" 表中的 "Id_P" 列是 "Orders" 表中的 FOREIGN KEY。
FOREIGN KEY 约束用于预防破坏表之间连接的动作。
FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。
FOREIGN KEY Constraint on CREATE TABLE
tasiyarin SQL a kanan "Orders" tabi a tsara FOREIGN KEY (Id_P):
ميكروسوفت كويكبيير:
CREATE TABLE Orders ( Id_O int NOT NULL, OrderNo int NOT NULL, Id_P int, PRIMARY KEY (Id_O), FOREIGN KEY (Id_P) REFERENCES Persons(Id_P) )
سيرفر لاسكويلى / اويرا / ميكروسوفت اكسس:
CREATE TABLE Orders ( Id_O int NOT NULL PRIMARY KEY, OrderNo int NOT NULL, Id_P int FOREIGN KEY REFERENCES Persons(Id_P) )
إذا كنت بحاجة إلى تسمية FOREIGN KEY Constraint، أو تعريف FOREIGN KEY Constraint لأكثر من عمود، استخدم الجملة التالية لاسكويلى:
ميكروسوفت كويكبيير / سيرفر لاسكويلى / اويرا / ميكروسوفت اكسس:
CREATE TABLE Orders ( Id_O int NOT NULL, OrderNo int NOT NULL, Id_P int, PRIMARY KEY (Id_O), CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P) REFERENCES Persons(Id_P) )
FOREIGN KEY Constraint لـ ALTER TABLE لاسكويلى
إذا كنت تريد إنشاء FOREIGN KEY Constraint لعمود "Id_P" عند وجود "Orders"، استخدم السكريبت التالى لاسكويلى:
ميكروسوفت كويكبيير / سيرفر لاسكويلى / اويرا / ميكروسوفت اكسس:
ALTER TABLE Orders ADD FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
إذا كنت بحاجة إلى تسمية FOREIGN KEY Constraint، أو تعريف FOREIGN KEY Constraint لأكثر من عمود، استخدم الجملة التالية لاسكويلى:
ميكروسوفت كويكبيير / سيرفر لاسكويلى / اويرا / ميكروسوفت اكسس:
ALTER TABLE Orders ADD CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
إلغاء FOREIGN KEY Constraint
لإلغاء FOREIGN KEY Constraint، استخدم السكريبت التالى لاسكويلى:
ميكروسوفت كويكبيير:
ALTER TABLE Orders DROP FOREIGN KEY fk_PerOrders
سيرفر لاسكويلى / اويرا / ميكروسوفت اكسس:
ALTER TABLE Orders DROP CONSTRAINT fk_PerOrders
- الصفحة السابقة مفتاح رئيسى لاسكويلى
- الصفحة التالية تأكد من صحة لاسكويلى