Khi đã tạo khóa ngoại FOREIGN KEY trong SQL Server, sẽ có trường hợp mà bạn cần phải vô hiệu hóa chúng. Khi đó, hãy dùng lệnh ALTER TABLE.
Cú pháp vô hiệu hóa khóa ngoại trong SQL Server
ALTER TABLE ten_bang
NOCHECK C
ONSTRAINT fk_ten;
Tên biến hoặc giá trị biến
ten_bang
Tên của bảng mà khóa ngoại đã được tạo.
fk_ten
Tên của khóa ngoại muốn vô hiệu hóa.
Ví dụ
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)
);
Ở ví dụ này, chúng ta tạo ra bảng mẹ là sanpham với khóa chính gồm trường thông tin là id_sanpham. Sau đó là bảng con có tên hangtonkho với khóa ngoại có ràng buộc xóa. Lệnh CREATE TABLE tạo khóa ngoại trên bảng hangtonkho có tên fk_htk_id_sanpham. Khóa ngoại hình thành mối quan hệ giữa cột id_sanpham trong bảng hangtonkho và id_sanpham trong bảng sanpham.
Nếu muốn vô hiệu hóa khóa ngoại đã tạo, chạy lệnh dưới đây.
ALTER TABLE hangtonkho
NOCHECK CONSTRAINT
fk_htk_id_sanpham;
Ví dụ trên dùng lệnh ALTER TABLE để vô hiệu hóa khóa ngoại fk_htk_id_sanpham đã tạo trong bảng hangtonkho.
23 Th12 2020
23 Th12 2020
21 Th12 2020
23 Th12 2020
23 Th12 2020
14 Th1 2021