เมื่อคีย์นอกของ FOREIGN KEY ใน SQL Server ถูกปิดใช้งาน คุณสามารถเปิด / เปิดใช้งานใหม่ด้วยคำสั่ง ALTER TABLE
ไวยากรณ์การเปิดใช้งานคีย์ต่างประเทศใน SQL Server
ALTER TABLE ten_bang
CHECK CONSTRAINT fk_ten;
ชื่อตัวแปรหรือค่าตัวแปร
ten_bang
ชื่อของตารางที่สร้างคีย์นอก
fk_ten
ชื่อของคีย์นอกที่คุณต้องการปิดใช้งาน
ตัวอย่างเช่น
CREATE TABLE sanpham
( id_sanpham INT PRIMARY KEY,
ten_sanpham VARCHAR(50) NOT NULL,
phan_loai VARCHAR(25)
);
CREATE TABLE hangtonkho
( id_hangtonkho INT PRIMARY KEY,
id_sanpham INT NOT NULL,
soluong INT,
luong_toithieu INT,
luong_toida INT,
CONSTRAINT fk_htk_id_sanpham
FOREIGN KEY (id_sanpham)
REFERENCES sanpham (id_sanpham)
);
ในตัวอย่างนี้ เราได้สร้างตารางพาเรนต์ sanpham พร้อมคีย์หลักรวมถึงฟิลด์ข้อมูล id_sanpham แล้วมีตารางลูกชื่อหางต้นค้อพร้อมกุญแจต่างประเทศที่มีข้อจำกัดในการลบ คำสั่ง CREATE TABLE สร้าง foreign key บนตาราง hangtonkho ชื่อ fk_htk_id_sanpham Foreign Key จะสร้างความสัมพันธ์ระหว่างคอลัมน์ id_sanpham ในตาราง hangtonkho และ id_sanpham ในตาราง sanpham
- Foreign Key (Cascade Delete) ใน SQL Server
- Foreign Key (Set Null) foreign key ใน SQL Server
หากคุณต้องการเปิดใช้งาน foreign key อีกครั้ง ให้รันคำสั่งต่อไปนี้
ALTER TABLE hangtonkho
CHECK CONSTRAINT fk
_htk_id_sanpham;
ตัวอย่างด้านบนใช้คำสั่ง ALTER TABLE เพื่อเปิดใช้งาน foreign key ชื่อ fk_htk_id_sanpham ในตาราง hangtonkho อีกครั้ง