Развертывание вывода сборки проекта базы данных (dbschema & co) в различные базы данных - PullRequest
1 голос
/ 13 января 2012

Я пытаюсь построить проект базы данных, а затем использовать вывод вместе с VSDBCMD для развертывания его в разных базах данных. Я добавил разные файлы sqldeployment и sqlcmdvars, соответствующие целевым средам, но я не могу изменить следующие переменные, которые кажутся доступными только для чтения (DatabaseName, DefaultDataPath, DefaultLogPath). Например, я хотел бы иметь базы данных QA и UA на одном экземпляре сервера, поэтому мне нужен сценарий развертывания для работы с различными именами баз данных и путем к файлам.

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

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

Заранее спасибо!

1 Ответ

0 голосов
/ 29 июня 2012

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

  • Создайте новую переменную в файле sqlcmdvars.
  • используйте эту переменную в файле File sql следующим образом: DBProject \ Объекты схемы \ Объекты уровня базы данных \ Хранилище \ Файлы

ALTER DATABASE [$ (DatabaseName)] ДОБАВИТЬ ФАЙЛ (ИМЯ = [MYDBNAME], FILENAME = ' $ (расположение данных) \ MyDatabaseName.mdf', РАЗМЕР = 2304 КБ, FILEGROWTH = 1024 КБ) В FILEGROUP [ПЕРВИЧНЫЙ];

...