Назад | Перейти на главную страницу

Автоматически отбрасывать FK, чтобы воссоздать таблицу, а затем автоматически возвращать FK

У меня есть ряд инцидентов, когда SSMS сообщает мне, что требуется воссоздание таблицы, даже для чего-то простого, например, для создания столбца, допускающего значение NULL. Если на эту таблицу ссылаются FK, я в идеале хотел бы найти способ временного удаления этих FK из «других» таблиц, воссоздания моей таблицы, а затем снова воссоздания FK в другой таблице.

Есть известный способ сделать это?

Отключение в этом случае не сработает.

Я бы, наверное, сделал это:

  1. использовать графический интерфейс SSMS для внесения моих изменений
    • сохранить скрипт: не выполнять
    • запустить этот раздел за разделом
    • используйте инструмент сравнения для создания лучшего сценария (например, Red Gate)

Шаг 4 является необязательным, и вместо этого вы добавляете сценарий из шага 2/3.