sqlserver 停用與啟用條件約束
紀錄停用與啟用條件約束的 sql ,還有檢查目前資料表條件約束的語法
語法
全部條件約束停用
1 2 3
| EXEC sp_MSforeachtable "ALTER TABLE ? NOCHECK CONSTRAINT ALL" GO
|
刪除全部資料表資料
1 2 3
| EXEC sp_MSForEachTable "DELETE FROM ?" GO
|
全部資料表增值索引重設
1 2 3
| EXEC sp_MSforeachtable "DBCC CHECKIDENT('?', RESEED, 0)" Go
|
全部條件約束啟用
1 2 3
| EXEC sp_MSforeachtable "ALTER TABLE ? WITH NOCHECK CHECK CONSTRAINT ALL" GO
|
檢查目前資料表條件約束狀態的語法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| SELECT f.NAME N'物件名稱', is_disabled N'已停用(1)', is_not_trusted N'不檢查現有資料(1)', s.NAME N'結構描述', o.NAME N'外部索引資料表', sc.NAME N'結構描述', r.NAME N'主索引資料表', delete_referential_action_desc N'在進行刪除時,宣告的參考動作之描述', update_referential_action_desc N'在進行更新時,宣告的參考動作之描述', f.type_desc N'物件描述' FROM sys.foreign_keys f INNER JOIN sys.objects o ON f.parent_object_id = o.object_id INNER JOIN sys.schemas s ON o.schema_id = s.schema_id INNER JOIN sys.objects r ON f.referenced_object_id = r.object_id INNER JOIN sys.schemas sc ON r.schema_id = sc.schema_id ORDER BY o.NAME GO
|
參考資料