Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách tạo ràng buộc khóa ngoại với tùy chọn ON DELETE SET NULL trong SQL Server - Hướng dẫn sử dụng SQL Server / TSQL Phần 81

Kịch bản:

Bạn đang làm việc với tư cách là nhà phát triển SQL Server, bạn cần tạo hai bảng với Mối quan hệ chính -Foreign Key. Bạn muốn tạo Ràng buộc khóa ngoại với cài đặt nếu bản ghi sẽ bị xóa khỏi Bảng được tham chiếu (Bảng cột khóa chính), nó sẽ không bị xóa khỏi Bảng mẹ (Bảng ràng buộc khóa ngoại) thay vào đó giá trị phải được cập nhật thành Null.

Giải pháp:

Chúng ta có thể sử dụng ON DELETE SET NULL với định nghĩa Ràng buộc khóa ngoại để thực hiện yêu cầu trên.
Hãy thực hiện bằng cách sử dụng tập lệnh bên dưới.
 SỬ DỤNG YourDatabaseNameGOCREATE TABLE dbo.Customer (Customerid INT PRIMARY KEY, FName VARCHAR (100), LName VARCHAR (100), SSN VARCHAR (10)) TẠO BẢNG dbo.Orders ( OrderId INT Identity (1, 1), OrderitemName VARCHAR (50), OrderItemAmt INT, Customer_id INT FOREIGN KEY THAM KHẢO Khách hàng (CustomerId) ON DELETE SET NULL) - chèn dữ liệu mẫu vào dbo.Customer (CustomerId, FName, LName, SSN ) các giá trị (1, 'Aamir', 'Shahzad', '000-000-00') chèn vào các giá trị dbo.Orders (OrderItemName, OrderItemAmt, Customer_Id) ('TV', 1,1) 
 
 
 
Kiểm tra dữ liệu trong bảng bằng cách sử dụng truy vấn Chọn
Cách tạo Ràng buộc khóa ngoại với ON DELETE SET NULL trong SQL Server


Hãy xóa hàng khỏi Bảng tham chiếu (Bảng cột khóa chính) và kiểm tra xem bản ghi có còn tồn tại trong Bảng mẹ (Bảng ràng buộc khóa ngoại) hay không và giá trị cột được cập nhật thành Null.

> --Xóa Bản ghi khỏi Bảng được Tham chiếu (Bảng Cột PK) Xóa khỏi dbo.Customer trong đó CustomerId =1
Cách sử dụng tùy chọn ON DELETE SET NULL với Ràng buộc khóa ngoại trong SQL Server

Như chúng ta có thể thấy rằng bản ghi bị xóa khỏi Bảng tham chiếu (Bảng cột khóa chính) nhưng vẫn hiện diện trong Bảng mẹ (Bảng ràng buộc khóa ngoại) nhưng giá trị được cập nhật thành Null như mong đợi.

Video Demo:Cách tạo Ràng buộc khóa ngoại với tùy chọn ON DELETE SET NULL trong SQL Server
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ưu điểm và nhược điểm của việc triển khai môi trường đám mây kết hợp

  2. Không thể sử dụng vị từ CONTAINS hoặc FREETEXT trên bảng hoặc chế độ xem được lập chỉ mục vì nó không được lập chỉ mục toàn văn bản

  3. freeTDS không sử dụng cấu hình của nó

  4. Kiểu dữ liệu SQL Server BIT - Hướng dẫn cơ bản

  5. Chuỗi phân tách T-SQL dựa trên dấu phân cách