Disable a Foreign Key SQL Server

В этом учебном пособии вы узнаете, как отключать внешний ключ в SQL Server (Transact-SQL) с синтаксисом и примерами.

Описание

После того как вы создали foreign key в SQL Server, вы можете столкнуться с ситуацией, когда вам необходимо отключить foreign key. Вы можете сделать это с помощью оператора ALTER TABLE.

Синтаксис

Синтаксис отключения внешнего ключа в SQL Server (Transact-SQL):

ALTER TABLE table_name
NOCHECK CONSTRAINT fk_name;

Параметры или аргументы

table_name - имя таблицы, в которой был создан внешний ключ.
fk_name - имя внешнего ключа, который вы хотите отключить.

Пример

Рассмотрим пример отключения внешнего ключа в SQL Server (Transact-SQL) с помощью оператора ALTER TABLE.
Например, если вы создали внешний ключ следующим образом:

В этом примере внешнего ключа мы создали родительскую таблицу products. Таблица products имеет первичный ключ, который состоит из поля product_id.

Затем мы создали вторую таблицу под названием inventory, которая в этом примере внешнего ключа будет дочерней таблицей. Мы использовали оператор CREATE TABLE для создания внешнего ключа fk_inv_product_id в таблице inventory. Внешний ключ устанавливает связь между столбцом product_id в таблице inventory и столбцом product_id в таблице products.

Если необходимо отключить отключить внешний ключ fk_inv_product_id, то выполняем следующую команду:

В этом примере внешнего ключа будет использоваться оператор ALTER TABLE для отключения ограничения fk_inv_product_id, в таблице inventory.