SSDT не видит измененную схему таблицы - PullRequest
0 голосов
/ 30 апреля 2018

У меня внезапно возникла проблема, когда схема, отредактированная для таблицы, не была применена на сервере. Обнаружил это, когда написал стартовый скрипт, и он вышел из строя: я изменил большинство полей на null, поэтому скрипт вставляет только значения NOT NULL. Но во время выполнения он выдает сообщение «Ожидаемое значение в столбце, кажется, что оно не равно NULL».

Опять же,

  • У меня есть таблица, измененная на NULL для столбцов
  • Написал против него скрипт
  • попросил «Опубликовать»
  • завершается ошибкой, поскольку для схемы таблицы все еще требуется NOT NULL в большинстве столбцов

Я сделал:

  • удален bin / obj,
  • удалены .refactorlog и .dbml так что получилась неработающая сборка, так как она требует .refactorlog.

Тогда я DROP ред таблицы. Все еще никаких изменений не обнаружено! Так как таблица не существует, я запустил CREATE вручную и, кажется, какие-то более поздние (впоследствии, впоследствии) изменения были обнаружены.


Итак, вопрос - что я делаю не так? Я думал, что SSDT будет анализировать статический код против целевой схемы. Но, похоже, нет. Я не хочу сталкиваться с такой проблемой внезапно, мне нужна пуленепробиваемая миграция схемы.


Окружающая среда:

  • VS 2017 15.6.6
  • Sql Server EXPRESS 2014 (12.0.2000)

Найдено только это , но, похоже, это не мой случай (Hovewer, сгенерированные наборы сценариев SET ANSI_NULLS ON ).

Очень признателен за объяснение этого вопроса!

...