Xóa khóa ngoại trong SQL Server
Bạn muốn xóa khóa ngoại trong SQL Server hay xóa ràng buộc khóa ngoại trong SQL Server? Dưới đây là hướng dẫn chi tiết dành cho bạn.
SQL Server là một trong số kiến thức mà mọi lập trình viên đều cần phải biết. Nó giúp quá trình quản trị dữ liệu trở nên đơn giản, nhanh chóng và gọn gàng hơn. Khi học SQL Server, việc xóa khóa ngoại như thế nào rất được quan tâm.
Khóa ngoại là thuộc tính trong một bảng lấy tham chiếu từ một bảng khác mà nó hoạt động như khóa chính trong bảng đó. Ngoài ra, cột này hoạt động như một khóa ngoại nên sẽ được hiện trong cả hai bảng.
Thông thường, bạn có hai cách xóa khóa ngoại trong SQL Server:
Dùng SQL Server Management Studio
- Trong Object Explorer, mở rộng bảng có giới hạn, rồi mở rộng Keys.
- Click chuột hải vào giới hạn, rồi chọn Delete.
- Trong hộp thoại Delete Object, chọn OK.
Dùng Transact-SQL
- Trong Object Explorer, kết nối một phiên bản của database engine.
- Trên thanh tiêu chuẩn, chọn New Query.
- Sao chép và dán ví dụ sau vào cửa sổ truy vấn và chọn Execute.
USE AdventureWorks2022;
GO
ALTER TABLE dbo.DocExe
DROP CONSTRAINT FK_Column_B;
GO
Khi đã tạo khóa ngoại FOREIGN KEY nhưng không dùng nữa và muốn xóa đi, bạn có thể dùng lệnh ALTER TABLE trong SQL Server (Transact-SQL).
Cú pháp xóa khóa ngoại trong SQL Server
ALTER TABLE ten_bangDROP CONSTRAINT 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 xóa.
Ví dụ
CREATE TABLEsanpham( 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_sanphamFOREIGN 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.
- Kích hoạt khóa ngoại trong SQL Server
- Khóa ngoại Foreign Key (Set Null) trong SQL Server
- Khóa ngoại Foreign Key (Cascade Delete) trong SQL Server
Nếu muốn xóa khóa ngoại fk_htk_id_sanpham, thực hiện lệnh dưới đây.
ALTER TABLE hangtonkhoDROP CONSTRAINT fk_htk_id_sanpham;
Lệnh ALTER TABLE nói trên sẽ xóa ràng buộc có tên fk_htk_id_sanpham trong bảng hangtonkho.
Bài trước: Khóa ngoại Foreign Key (Set Null) trong SQL Server
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
-
MS SQL Server là gì?
-
Các phiên bản MS SQL Server
-
Tìm hiểu về kiến trúc của MS SQL Server
-
Hướng dẫn cài đặt MS SQL Server
-
Quản lý MS SQL Server bằng Management Studio
-
Các cách đăng nhập cơ sở dữ liệu
-
Cách tạo cơ sở dữ liệu
-
Cách chọn cơ sở dữ liệu
-
Cách xóa cơ sở dữ liệu
-
Cách tạo bản sao dữ liệu
-
Cách khôi phục cơ sở dữ liệu
-
Cách tạo người dùng
-
Giám sát cơ sở dữ liệu
-
Cách khởi động và dừng các dịch vụ
-
High Availability - Tính sẵn sàng
-
Dịch vụ tạo báo cáo
-
Execution Plans - Kế hoạch thực thi
-
Các dịch vụ tích hợp
-
Các dịch vụ phân tích
-
Lệnh SQL Server cơ bản
-
Lệnh DROP USER trong SQL Server
-
Tìm User trong SQL Server
-
Sử dụng chú thích trong SQL Server
-
LITERAL (Hằng) trong SQL Server
-
Khai báo biến trong SQL Server
-
SEQUENCE trong SQL Server
-
FUNCTION (Hàm) trong SQL Server
-
PROCEDURE (Thủ tục) trong SQL Server
-
Khóa ngoại Foreign Key
-
Các lệnh điều khiển và vòng lặp
-
Các hàm xử lý chuỗi
-
Hàm xử lý số - toán học
-
Hàm xử lý Date/Time
-
Hàm chuyển đổi kiểu dữ liệu
-
Kiểm tra thông tin phiên bản
-
Các hàm nâng cao
Hướng dẫn AI
Học IT
Hàm Excel