Как устранить неполадки, когда VSDBCMD не развертывается, но не показывает ошибок? - PullRequest
0 голосов
/ 14 марта 2012

Я пытаюсь использовать VSDBCMD.exe (версия Visual Studio 2010) для развертывания выходных данных проекта базы данных. Я включаю ключ / dd: + в моей командной строке. Каждый раз, когда я запускаю команду, я получаю одно сообщение:

TSD00566        Deployment script generated to:
C:\Deploy\SqlServerDB.txt

Нет ошибок, но сценарий развертывания не выполняется и развертывание не происходит. У меня не включен переключатель /Quiet.

Я попытался указать все параметры в командной строке и использовать файл .deploymentmanifest. Я получаю одинаковые результаты в любом случае: файл сценария создается, но не выполняется. Изменения схемы не развернуты.

Я знаю, что моя строка подключения верна, потому что сгенерированный сценарий развертывания действителен (и даже ссылается на пути к файлам, которые существуют только на целевом сервере SQL).

Моя текущая командная строка (как в самой последней попытке) -

vsdbcmd.exe 
    /a:Deploy 
    /cs:"Data Source=[the correct server];Integrated Security=True;Pooling=False;Initial Catalog=[the correct database]" 
    /Quiet- 
    /dd:+ 
    /p:TargetDatabase="[the correct database]" 
    /dsp:Sql 
    /Model:"C:\[output path]\SqlServerDB.dbschema"

Не могли бы вы помочь мне выяснить, как устранить неполадки этой команды, поскольку я не получаю никаких сообщений об ошибках или полезных выходных данных?

1 Ответ

0 голосов
/ 20 марта 2012

Когда VSDBCMD генерирует дельта-сценарий и обнаруживает отсутствие изменений между проектом базы данных и целевой базой данных, он не выполняет шаг развертывания.

Тем не менее, он также не отображает никаких сообщений, указывающих, почему он не развернут. Таким образом, ошибок не было (поэтому сообщений об ошибках нет), но они не были развернуты, поскольку исходные сценарии были идентичны целевой базе данных после первого запуска команды.

Было бы неплохо иметь какое-то сообщение, указывающее «нет изменений для развертывания», но, по крайней мере, теперь я знаю, что оно работает так, как задумано, и что развертывание не требуется.

...