У нас есть DB-проект Visual Studio, который имеет объекты DB, которые ссылаются на базу данных master/или msdb.Разверните DACPAC с помощью SqlPackage.exe со ссылками на master и msdb
В настоящее время существует два случая:
(1) С, не имеющими ссылок на базы данных системы «хозяин» и «MSDN» в настройках проекта, можно в построить проект, но есть много предупреждений, потому что ссылки на «master» или «msdb» не могут быть разрешены. Внедрение DACPAC не представляет проблемы.
(2) Имея ссылки на системные базы данных «master» и «msdn» в настройках проекта, можно создать проект без предупреждения, но развертывание возможно только тогда, когда также «master.dacpac» и «msdn.dacpac» поставляется с нашими проектами DACPAC.
Таким образом, оба случая работают, но в первом случае у нас есть много предупреждений во время разработки. Во втором случае «master.dacpac» и «msdn.dacpac» должны быть доставлены клиенту, и я не знаю, обновлены ли они во время развертывания.
Итак, есть ли способ решить эти недостатки обоих случаев?
целевая платформа для DB-проекта установлена SQL Server 2012. Мы хотим использовать файл DACPAC для обновления SQL Server 2012 и SQL Server 2014.
Что вы имеете в виду «должны быть доставлены заказчику», вы передающим dacpac на сервер клиента? Как вы развертываете dacpac? Мне интересно, потому что у меня подобная проблема. – Davos
Да, мы передаем dacpac клиенту и развертываем его с помощью SqlPackage.exe – user1027167
Вы храните dacpac в той же структуре каталогов на сервере этого клиента? У меня проблема, когда dacpac хранит жестко закодированные пути к ссылкам. – Davos