2010-03-15 4 views
11

Я не вижу, чтобы найти краткое объяснение различий, поэтому я могу выяснить, что использовать.Проект Visual Studio «Сервер SQL Server 2008» по сравнению с «Проектом базы данных Sql Server 2008»?

Один для одного сервера для базы данных? Я не уверен, что это значит ..

В основном мы делаем новое веб-приложение, и я хочу увидеть, что эти типы проектов могут предложить мне в плане отслеживания кода DB/схемы и т.д ..

+0

Почему вы не создавать оба проекта и сделать диф на них? –

ответ

14

SQL Проект Server 2008: используется для создания SQL-CLR module, например создать хранимую процедуру proc, функцию, агрегат и т. д. на C# (или VB.NET), который будет запущен внутри SQL Server.

При создании такого проекта и нажатии кнопки «Добавить новый элемент» в обозревателе решений вам предоставляется выбор создания хранимой процедуры, триггера, агрегата, пользовательской функции, определенный тип или вспомогательный класс. Все они будут скомпилированы в сборку .NET, которая будет развернута на SQL Server и будет выполнена внутри SQL Server в среде выполнения SQL-CLR.

базы данных SQL Server Project: это только набор скриптов SQL для запуска с базой данных, для создания и управления объектами базы данных

В проекте базы данных SQL Server, вы в основном получить только добавить сценарии SQL - .sql файлы. На самом деле ничего. Так что это действительно сильно отличается от типа проекта SQL Server 2008!

+0

Так звучит для меня, меня интересует только проект базы данных SQL Server? Поскольку все, что мне нужно, это способ взглянуть на схему таблиц/SP в исходном элементе управления. И мне хотелось бы, чтобы можно было нажимать изменения на разных серверах (были бы проекты БД помогите с этим?) Я посмотрел на два между ними .... Похоже на то, erence - это папка «Объекты уровня сервера» ... и свойства проекта как кажутся идентификаторами. так .... Проекты серверов просто кажутся проектами БД с некоторыми дополнительными пустыми папками? – punkouter

+0

см. Мое обновление - два на самом деле ** совершенно разные! –

5

Ответ здесь, похоже, не отвечает на поставленный вопрос. «Проект сервера SQL Server 2008» «Проект базы данных SQL Server 2008» - это то, что существует в Visual Studio 2008 Database Edition, но, к сожалению, пока нет ответа на один из названных «Проект SQL Server 2008», SQL Server Project ", который соответствует описанию. Более того, тип проекта больше не называется «Project Database Database Project» (по крайней мере, не в Visual Studio 2008 Team Suite), хотя приведенное выше описание, похоже, описывает гораздо более старые проекты баз данных, которые были в одной точке, доступной в VS ,

Подумав об этом дальше, я собираюсь предположить, что у marc_s нет версии Database Edition (иначе известной как Data Dude или DBPro). Поправьте меня если я ошибаюсь.

Проекты базы данных Sql Server 2008 и серверные проекты Sql Server 2008, похоже, делают в основном то же самое. Я бы надеялся, что проекты сервера будут использоваться для установки и настройки и управления изменениями экземпляра Sql Server, в то время как проекты баз данных будут использоваться для отдельных баз данных внутри них ... но это, похоже, не так , Кто-нибудь действительно смог определить различия между ними?

Немного поразмыслив в том, что Sql Server 2008 Server Projects всегда будет развертываться в основной базе данных на сервере, на котором выполняется развертывание, независимо от того, какую базу данных вы импортируете (мастер или иначе) при создании проекта. Таким образом, в этом случае проекты баз данных предназначены для ваших бизнес-баз данных, тогда как серверные проекты предназначены специально для основной базы данных на сервере, где хранятся ваши бизнес-базы данных.

Edit: После соскабливать документации VS2008 немного сложнее, я наткнулся на эту спецификацию:

Развертывание сервера Проекты Проект базы данных»может содержать определения для объектов базы данных, для объектов сервера, или для обоих.В большинстве сред разработчики могут изменять объекты базы данных, но только администратор базы данных может изменять объекты сервера. Вы можете применить это ограничение, поставив объекты сервера в отдельный проект (известный как серверный проект). Затем вы можете ограничить контроль версий, чтобы только администраторы могли изменять проект сервера. В промежуточной или производственной среде проект сервера и его объекты чаще всего развертываются отдельно от проекта, который содержит объекты базы данных.

Развертывание проекта сервера с использованием тех же процедур, которые можно использовать для развертывания проекта схемы.»

http://msdn.microsoft.com/en-us/library/dd193413.aspx

+0

Но я не понимаю, что такое REAL WORLD, потому что SERVER PROJECTS действительно будет полезен ... После моего повторного поиска я решил, что ПРОЕКТЫ DATABASE - это все, что нам нужно, это ... просто способ контроля версий нашего SQL-материала ... дополнительные вещи, которые можно получить с ПРОЕКТАМИ SERVER. Я не понимаю, как это практиковать в небольшом приложении ...? – punkouter

+0

Я согласен - из того, что я могу сказать, введение сервера Project служит только для того, чтобы запутать пользователя. Возможно, это был простой флаг в проекте Database Project, который ограничивал его ориентацией на master db для развертывания. – bwerks

+1

Серверный проект предназначен для создания логинов и т. Д. Для вашего проекта базы данных. То есть объекты на уровне сервера. Проект базы данных для ваших таблиц и т. Д. –

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