Разверните выходные данные сборки проекта базы данных (dbschema & co) в различных базах данных.

I am trying to build a database project, and then use the output along with VSDBCMD to deploy it to different databases. I have added different sqldeployment & sqlcmdvars files corresponding to the environments I aim, but I am not able to change the following variables, which seem to be readonly (DatabaseName, DefaultDataPath, DefaultLogPath). For example I would like to have QA and UA databases on the same server instance so I need my deployment script to work with different database names and files path.

Более того, когда я создаю свой проект базы данных в TFS, я не могу найти определенные файлы sqlcmdvars и sqldeployment (например, MyDatabase-QA.sqlcmdvars, MyDatabase-UA.sqlcmdvars) в моей папке.

Я делаю что-то неправильно? Какие еще варианты у меня есть?

Thanks in advance!


person Iulian Ilies    schedule 12.01.2012    source источник


Ответы (1)


Может быть, немного поздно для вас, но после небольшого поиска, если вы хотите установить, например, собственный путь к файлу для вашего MDF/LDF, я сделал следующее.

  • Создайте новую переменную в файле sqlcmdvars.
  • используйте эту переменную в файле sql файла следующим образом: DBProject\Schema Objects\Database Level Objects\Storage\Files

ИЗМЕНИТЬ БАЗУ ДАННЫХ [$(DatabaseName)] ДОБАВИТЬ ФАЙЛ (ИМЯ = [MYDBNAME], FILENAME = '$(DataLocation)\MyDatabaseName.mdf', SIZE = 2304 КБ, FILEGROWTH = 1024 КБ) В ФАЙЛОВУЮ ГРУППУ [ НАЧАЛЬНЫЙ];

person ozz    schedule 29.06.2012
comment
Тем временем я сам нашел этот ответ :-) и забыл опубликовать его здесь. Тем не менее, это работает, и я отметил ваш ответ как правильный. Спасибо - person Iulian Ilies; 02.08.2012