Tình huống:
Bạn đang làm việc với tư cách là nhà phát triển SQL Server hoặc nhà phát triển ETL, Bạn đã tắt tất cả các Ràng buộc Kiểm tra trong Cơ sở dữ liệu SQL Server trước khi tải dữ liệu. Bạn cần cung cấp tập lệnh có thể tạo các tập lệnh Ràng buộc Kiểm tra cho tất cả các Ràng buộc Kiểm tra bị tắt trong Cơ sở dữ liệu SQL Server.
Giải pháp:
Chúng ta có thể sử dụng các đối tượng hệ thống để tạo các tập lệnh Check Constraints cho phép. Truy vấn bên dưới có thể được sử dụng để tạo các tập lệnh để Bật Ràng buộc Kiểm tra, Nếu bạn không muốn bật tất cả Ràng buộc Kiểm tra, bạn có thể lọc thêm các đối tượng trong mệnh đề where.
--Generate Script to Enable All Check Constraint in SQL Server Database
Select DB_Name() AS DBName,
Schema_Name(Schema_id) AS TableSchema,
Object_name(parent_object_id) as TableName,
definition,
'Alter Table [' + Schema_Name(Schema_id)
+ '].[' + Object_name(parent_object_id)
+ ']' + ' CHECK CONSTRAINT '
+ '[' + NAME + ']' AS EnableCheckConstraint
From sys.check_constraints
where is_disabled=1
|
Cách tạo Kích hoạt tất cả Tập lệnh Kiểm tra Ràng buộc trong Cơ sở dữ liệu SQL Server |
Sao chép kết quả từ cột EnableCheckConstraint, dán vào SSMS và thực thi.
Alter Table [dbo].[Customer22] CHECK CONSTRAINT [CK__Customer2__FName__6C190EBB]
Alter Table [dbo].[Employee] CHECK CONSTRAINT [CK__Employee__FName__7A672E12]
Video Demo : How to generate Scripts to enable all Check Constraints
in SQL Server Database