適用於:SQL Server 2016 (13.x) 及以後版本
Azure SQL Database
AzureSQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL database in Microsoft Fabric
您可以使用 SQL Server Management Studio 或 Transact-SQL,針對 SQL Server 中的 INSERT 和 UPDATE 交易來停用檢查限制式。 停用檢查約束之後,未來針對該資料行進行的插入或更新操作將不會依據約束條件進行驗證。 如果您確知新資料將違反現有條件約束,或是條件約束只適用於已經在資料庫中的資料,請使用此選項。
如需詳細資訊,請參閱檢查限制式。
Note
檢查限制式是使用 ALTER TABLE 陳述式來啟用和停用,該陳述式一律需要 架構修改鎖 (Sch-M)。 Sch-M 鎖定能防止對資料表的並行存取。 如需詳細資訊,請參閱鎖和 ALTER TABLE。
Permissions
需要資料表的 ALTER 權限。
使用 SQL Server Management Studio
若要停用 INSERT 和 UPDATE 陳述式檢查條件約束
在 [物件總管]中,展開含有條件約束的資料表,然後展開 [條件約束] 資料夾。
以滑鼠右鍵按一下條件約束,然後選取 [修改]。
在 [資料表設計工具]底下的方格中,按一下 [於 INSERT 及 UPDATE 時強制套用] ,然後從下拉式功能表中選取 [否] 。
按下 關閉。
使用 Transact-SQL
若要停用 INSERT 和 UPDATE 陳述式檢查條件約束
在物件總管中,連線到資料庫引擎的一個執行個體。
在標準列上,按一下 [新增查詢] 。
將下列範例複製並貼入查詢視窗中,然後按一下 [執行] 。
USE AdventureWorks2022; GO ALTER TABLE Purchasing.PurchaseOrderHeader NOCHECK CONSTRAINT CK_PurchaseOrderHeader_Freight; GO