在 MS SQL 中暫時停用約束以進行資料操作
在處理 SQL 資料庫時,強制執行約束對於維護資料完整性至關重要。但是,在某些情況下,暫時停用約束可以簡化資料操作任務。
問題:
是否可以在 MS SQL 中暫時關閉並重新開啟所有資料庫約束(例如,表關係)?
答案:
是的,可以使用以下方法在 MS SQL 中停用和重新啟用約束:
停用特定表上的限制:
要停用名為「tableName」的特定表上的約束:
<code class="language-sql">ALTER TABLE tableName NOCHECK CONSTRAINT ALL</code>
重新啟用特定表上的限制:
要重新啟用同一表上的限制:
<code class="language-sql">ALTER TABLE tableName WITH CHECK CHECK CONSTRAINT ALL</code>
停用所有表格上的限制:
若要停用資料庫中所有資料表上的約束,請執行下列預存程序:
<code class="language-sql">EXEC sp_msforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'</code>
重新啟用所有表格上的限制:
若要重新啟用資料庫中所有資料表上的約束,請執行下列預存程序:
<code class="language-sql">EXEC sp_msforeachtable 'ALTER TABLE ? WITH CHECK CHECK CONSTRAINT ALL'</code>
以上是我可以暫時停用並重新啟用 MS SQL 中的約束嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!