1)
Поместите представления и хранимые процедуры в один проект и таблицы в другом проекте, на который вы ссылаетесь из первого проекта, используя ссылку "та же база данных".
Просто развернитеdacpac с view / procs и не устанавливайте IncludeCompositeProjects в true.
Убедитесь, что вы не включили DropObjectsNotInSource, но это будет означать, что если вы переименуете или удалите proc / view, вам нужно будет удалить его вручнуюно, по крайней мере, вы не уроните столы и т. д.
Проверьте его правильно, прежде чем приступить к производству:)
2)
Вы сражаетесь с моделью dacpac команды "make"эта база данных выглядит как этот dacpac ", так что, может быть, посмотрите на что-то еще, на готовый рулон или пролет или dbup, где вы все еще можете контролировать исходный код своего кода, но не должны беспокоиться о развертывании схемы и т. д.
Если вы действительно толькокогда-нибудь нужно будет обновить представления и процедуры, тогда вы можете проверить в управлении исходным кодом каждый объект в своем собственном файле, например:
create or alter xx
или, еслиn более старая версия sql:
if exists drop
, за которой следует create xx
использование чего-то вроде PowerShell или даже пакетных сценариев dos для генерации одного сценария развертывания:
ls -r *.sql | %{ "
r n---file $($_) ---
r n";cat $_} > ../deploy.sql
если все, что вам когда-либо нужно обновить, это представления и сохраненные процы, то вы буквально живете мечтой:)
ed