2010-11-20 11 views
2

Я только немного знаком с функциями приложений уровня данных и тем, что делал Database Projects в Visual Studio Visual Studio.Выполняют ли проекты приложений уровня данных замену проектов баз данных из Visual Studio Database Edition?

Являются ли эти два разных перекрывающихся решения для контроля версий баз данных? Или функциональность Data Tier Application полностью заменяет необходимость использования проектов визуализации визуальной студии и проектов баз данных?

ответ

2

В настоящее время различие между проектами базы данных и проектами уровня данных находится в точке развертывания. Если вы хотите создать dacpac, вы должны использовать проект уровня данных. Если вы хотите создать файл миграции .dbschema и sql, вы должны использовать обычный проект базы данных.

Насколько я знаю, ожидается, что приложения уровня данных будут важны в будущем для развертывания SQL Azure.

Если вы специально не изучаете SQL Azure, я бы сейчас использовал проекты Database. Все зависит от того, чего вы пытаетесь достичь. Это может быть так, что SQL Source Control (от Red Gate, компании, в которой я работаю) больше подходит для ваших нужд.

+0

Спасибо, что поставили два продукта Microsoft в перспективе. Я определенно внимательно рассмотрю решение вашей компании. Цените совет! – djmc

+0

Мы надеемся «поддержать» проект базы данных в SQL Source Control в ближайшем будущем в следующем году, но это бизнес-решение будет основываться на увеличении использования проектов баз данных. –

+0

Интересно, каково ваше мнение о нынешнем состоянии вещей.Кажется, VS 2013+ «Проекты баз данных» выплевывают файлы dacpac при их создании. Используются ли приложения Data-Tier? Соединились ли эти две концепции? – Dan

0

Я считаю, что проекты базы данных Visual Studio ориентированы на разработчиков.

Приложения уровня данных предназначены для администраторов баз данных. См. this blog.

+2

Но приложения уровня данных должны быть созданы «разработчиками баз данных», а не администраторами баз данных. и они должны быть построены в визуальной студии, а не в SSMS. – djmc

+0

Я думаю, идея состоит в том, что dacpacs создаются разработчиками, но переданы DBA для легкого развертывания с использованием мастера в SSMS. Результатом проектов базы данных является файл sql, который также передается администратору базы данных и должен выполняться с целевым сервером. –

7

ЦАП представляет собой модель приложения, которая может использоваться как интерфейс между разработчиками и администраторами баз данных. Разработчик редактирует модель, DBA управляет/развертывает из модели. Например, как только модель будет построена или извлечена, ее можно развернуть на несколько серверов.

Представьте себе .dacpac как .exe. Разработчик создает .exe и передает его кому-то. На этом этапе было бы неплохо, если бы разработчику не пришлось беспокоиться о том, где работает этот .exe, потому что .exe внутренне согласован - он либо запускается, либо нет. Зачем разработчику нужно беспокоиться о том, чтобы конкретно настроить 2008, 2005 или Azure? Просто разработайте модель приложения и дайте ЦАП позаботиться об остальном ...

Наличие этого артефакта развертывания также предоставляет некоторые новые возможности. Примеры включают развертывание версий, возможность определить, изменил ли кто-либо базу данных с момента последнего развертывания или обновления, возможность создания одной и той же базы данных на разных целевых серверах.

Вам нравится управлять библиотекой сценариев обновления для различных баз данных? Было бы неплохо, если бы все состояние вашей базы данных могло быть построено или захвачено (извлечено) в любой момент времени?

Проект mashup приложения приложений базы данных в VS 2010 будет разрешен в предстоящей версии инструментов разработчика, ориентированных на базу данных. Инвестирование в dbschema или DAC не влияет на форвардную совместимость.

+0

Большое спасибо за этот дополнительный ответ. Вы действительно помогли уточнить ЦАП. – djmc

 Смежные вопросы

  • Нет связанных вопросов^_^