Computer >> Máy Tính >  >> Lập trình >> SQL Server

Tắt khóa ngoại trong SQL Server

Khi bạn đã tạo khóa ngoại FOREIGN KEY trong SQL Server, sẽ có trường hợp bạn cần tắt chúng. Sau đó, sử dụng lệnh ALTER TABLE.

Cú pháp để tắt khóa ngoại trong SQL Server

  ALTER TAB LE 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 bạn muốn tắt.

Ví dụ:

  CREATE TABL E 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)
);

Trong ví dụ này, chúng tôi đã tạo bảng mẹ, sanpham, với khóa chính bao gồm trường thông tin id_sanpham. Sau đó, có một bảng con tên là hangtonkho với khóa ngoại có ràng buộc xóa. Câu 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.

  1. Khóa ngoại (Xóa theo tầng) trong SQL Server
  2. Khóa ngoại (Set Null) khóa ngoại trong SQL Server

Nếu bạn muốn tắt khóa ngoại đã tạo, hãy chạy lệnh bên dưới.

  ALTER TABLE hangtonkh o 
NOCHECK CONSTRAINT fk_htk_id_sanpham;

Ví dụ trên sử dụng lệnh ALTER TABLE để tắt khóa ngoại fk_htk_id_sanpham được tạo trong bảng hangtonkho.