Отключение проверочных ограничений в инструкциях INSERT и UPDATE
Область применения: SQL Server 2016 (13.x) и более поздних версий База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics Analytics Platform System (PDW)
Вы можете отключить ограничение проверки для INSERT
и UPDATE
транзакций в SQL Server с помощью SQL Server Management Studio или Transact-SQL. После отключения проверочных ограничений будущие вставки и обновления столбца не проверяются по проверочным ограничениям. Используйте эту возможность, если новые данные будут нарушать существующее ограничение или если ограничение относится только к данным, уже помещенным в базу данных.
Дополнительные сведения см. в разделе Проверочные ограничения.
Примечание.
Проверочные ограничения включаются и отключаются с помощью инструкции ALTER TABLE
, которая всегда требует блокировки изменения схемы (Sch-M
). Блокировки Sch-M предотвращают одновременный доступ к таблице. Дополнительные сведения см. в разделе Блокировки и инструкция ALTER TABLE.
Разрешения
Требуется разрешение 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