SQL FOREIGN KEY အကျုပ်
- 上一页 SQL Primary Key
- 下一页 SQL Check
SQL FOREIGN KEY အကျုပ်
အချက်အလက်တစ်ခုတွင် FOREIGN KEY သည် အချက်အလက်တစ်ခု၏ PRIMARY KEY ကို လိုက်နိုင်သည်
အပိုင်းစံ FOREIGN KEY ကို အောက်ပါ အချက်အလက်တွင် ဖော်ပြပါ
"Persons" အချက်အလက်
Id_P | အကြီးအမည် | ပထမအမည် | လိပ်စာ | မြို့ |
---|---|---|---|---|
1 | အက်ဒလစ် | ဂျွန် | အော်ဒိုစ်စ် ရဲ | လန်ဒန် |
2 | ဘူရ | ဂျော့ | ဖော်ချ်းမြို့ | နယူးဂျီ |
3 | ကာတာ | တက်သူ | ချန်နီးရီး | ဘိုင်င်ဂျီ |
"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 အပိုင်းစံ သည် အချက်အလက်တွင် မမှန်ကန်သော အချက်အလက် ပြုလုပ်ခြင်းကို တားမြစ်နိုင်သည် သို့မဟုတ် သူ့ကို လိုက်နိုင်သော အချက်အလက် တစ်ခု ဖြစ်စေ သည်
CREATE TABLE အောက်မူ FOREIGN KEY အပိုင်းစံ
အောက်ပါ SQL သည် "Orders" အချက်အလက် ကို ဖန်တီးချိန်တွင် "Id_P" လိပ်ဖောင်ဒေါ်လုပ်ဆောင်ခြင်းအတွက် FOREIGN KEY ကို ဖန်တီးသည်
MySQL:
CREATE TABLE Orders ( Id_O int NOT NULL, OrderNo int NOT NULL, Id_P int, PRIMARY KEY (Id_O), အပိုင်းစံ (Id_P) ကို ကိုင်းပြီးခဲ့သော အချက်အလက် (Id_P) )
SQL Server / Oracle / MS Access:
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 约束,以及为多个列定义 FOREIGN KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
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) )
SQL FOREIGN KEY Constraint on ALTER TABLE
如果在 "Orders" 表已存在的情况下为 "Id_P" 列创建 FOREIGN KEY 约束,请使用下面的 SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Orders ADD FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
如果需要命名 FOREIGN KEY 约束,以及为多个列定义 FOREIGN KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Orders ADD CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
撤销 FOREIGN KEY 约束
如需撤销 FOREIGN KEY 约束,请使用下面的 SQL:
MySQL:
ALTER TABLE Orders DROP FOREIGN KEY fk_PerOrders
SQL Server / Oracle / MS Access:
ALTER TABLE Orders DROP CONSTRAINT fk_PerOrders
- 上一页 SQL Primary Key
- 下一页 SQL Check