Поделиться через


Пошаговое руководство. Разбиение на части проекта базы данных с помощью частичных проектов

С помощью частичных проектов можно изолировать разработку определенных объектов в проекте базы данных. Разбив базу данных на частичные проекты и запретив доступ системы контроля версий к объектам в импортированных частичных проектах, можно предотвратить изменение пользователями частей базы данных, которые не должны обновляться.

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

В этом пошаговом руководстве выполняются следующие действия.

  • Создание исходного проекта базы данных, содержащей определения для схемы и двух таблицы в базе данных

  • Экспорт объектов в виде частичного проекта

  • Создание проекта базы данных разработки

  • Импорт объектов в частичный проект в проекте разработки

  • Определение хранимых процедур, которые ссылаются на импортированные объекты

  • Настройка, построение и развертывание проекта разработки

Обязательные компоненты

Предварительно нужно установить Visual Studio и получить права доступа для записи на сервере, на котором выполняется SQL Server.

Создание исходного проекта базы данных и его объектов

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

Создание проекта базы данных-источника

  1. В меню Файл последовательно выберите команды Создать и Проект.

    Откроется диалоговое окно Новый проект.

  2. В области Установленные шаблоны разверните узел База данных и щелкните SQL Server.

    Примечание

    Если вы используете Visual Studio Professional, зайдите в Установленные шаблоны, последовательно раскройте узлы База данных и SQL Server и щелкните Дополнительно.

  3. В списке шаблонов выберите Проект базы данных SQL Server 2008.

    Примечание

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

  4. В поле Имя введите MySourceDatabase.

  5. Введите или укажите путь к месту, в котором нужно создать проект базы данных, в поле Расположение и нажмите кнопку ОК.

    Важно!

    Если путь слишком длинный, при попытке импортировать частичный проект на последующих этапах данного пошагового руководства может отобразиться сообщение об ошибке.Чтобы избежать этих ошибок можно использовать более короткий путь.

    В обозревателе решений отобразится созданный проект.

    Далее нужно определить схему и таблицы в этой схеме.

Определение схемы

  1. В меню Вид выберите команду Представление схемы базы данных.

  2. Последовательно разверните узел MySourceDatabase и Схемы, щелкните правой кнопкой мыши узел Схемы, подведите указатель к команде Добавить и выберите пункт Схема.

    Откроется диалоговое окно Добавление нового элемента.

  3. Выберите Схема в списке Шаблоны.

  4. В поле Имя введите имя Person и нажмите кнопку Добавить.

    Далее нужно создать таблицы в новой схеме.

Определение таблиц в схеме Person

  1. В представлении схемы щелкните правой кнопкой мыши узел Person, выберите команду Добавить, а затем Таблица.

    Примечание

    Чтобы сократить эту пошаговую процедуру, не обновляйте определения таблиц.

    Откроется диалоговое окно Добавление нового элемента.

  2. Выберите Таблица в списке Шаблоны.

  3. В поле Имя введите Contacts и нажмите кнопку Добавить.

  4. Щелкните правой кнопкой мыши узел Person и выберите последовательно пункты Добавить и Таблица.

    Откроется диалоговое окно Добавление нового элемента.

  5. Выберите Таблица в списке Шаблоны.

  6. В поле Имя введите имя StateProvince и нажмите кнопку Добавить.

    Далее нужно экспортировать схему Person и ее объекты.

Экспорт объектов в виде частичного проекта

Процедура экспорта объектов в виде частичного проекта

  1. В обозревателе решений разверните узел Объекты схемы и узел Схемы.

    Отобразится узел Person.

  2. Разверните последовательно узлы Объекты уровня базы данных, Безопасность и Схемы.

    Отобразится файл Person.schema.sql.

  3. Щелкните правой кнопкой мыши узел Person, а затем выберите Экспортировать как частичный проект.

    Откроется диалоговое окно Сохранить как.

  4. В поле Имя файла введите ExportedPersonSchema и нажмите кнопку Сохранить.

    Запишите для себя папку, в которой был сохранен частичный проект.

  5. В меню Файл выберите команду Закрыть решение. В ответ на запрос сохранения изменений, внесенных в решение, нажмите кнопку Да.

    Далее следует создать проект, в котором будут разрабатываться хранимые процедуры, ссылающиеся на таблицы в схеме Person.

Создание проекта базы данных разработки

Процедура создания проекта базы данных разработки

  1. В меню Файл последовательно выберите команды Создать и Проект.

    Откроется диалоговое окно Новый проект.

  2. В области Установленные шаблоны разверните узел База данных и щелкните SQL Server.

    Примечание

    Если вы используете Visual Studio Professional, зайдите в Установленные шаблоны, последовательно раскройте узлы База данных и SQL Server и щелкните Дополнительно.

  3. В списке шаблонов выберите Проект базы данных SQL Server 2008.

    Примечание

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

  4. В поле Имя введите MyDevelopmentDatabase.

  5. Введите или укажите путь к месту, в котором нужно создать проект базы данных, в поле Расположение и нажмите кнопку ОК.

    В обозревателе решений отобразится созданный проект.

    Далее следует импортировать частичный проект, экспортированный в предыдущей процедуре.

Импорт объектов в частичном проекте

Импорт частичного проекта

  1. В обозревателе решений щелкните правой кнопкой мыши узел проекта MyDevelopmentDatabase и выберите Импортировать частичный проект.

  2. В диалоговом окне подтверждения нажмите кнопку Да.

  3. В диалоговом окне Открытие перейдите к папке, содержащей частичный проект, экспортированный из MySourceDatabase.

  4. Щелкните файл ExportedPersonSchema.files и нажмите кнопку Открыть.

    Произойдет выгрузка или перезагрузка проекта, а в обозревателе решений отобразится папка с именем MySourceDatabaseBasePath.

  5. Разверните папку MySourceDatabaseBasePath.

    В этой папке содержатся файлы, экспортированные из базы данных-источника.

    Далее необходимо определить хранимую процедуру, которая ссылается на таблицу, определенную в схеме Person.

Определение хранимых процедур, которые ссылаются на импортированные объекты

Определение простой хранимой процедуры

  1. В меню Вид выберите команду Представление схемы базы данных.

  2. В представлении схемы разверните узел MyDevelopmentDatabase, а затем узел Схемы.

  3. Щелкните правой кнопкой мыши узел Person и выберите последовательно пункты Добавить и Хранимая процедура.

    Откроется диалоговое окно Добавление нового элемента.

  4. В поле Имя введите uspCountContacts и нажмите кнопку Добавить.

    В проект будет добавлена хранимая процедура, которая отобразится в редакторе Transact-SQL.

  5. В редакторе Transact-SQL обновите код следующим образом:

    CREATE PROCEDURE [Person].[uspCountContacts]
    AS
    SELECT COUNT(*) FROM [Person].[Contacts]
    
  6. В меню Файл выберите команду Сохранить все.

    Далее нужно настроить проект базы данных разработки, построить его, а затем развернуть в конечной базе данных.

Настройка, построение и развертывание проекта разработки

Процедура настройки, построения и развертывания базы данных разработки

  1. В окне обозреватель решений щелкните правой кнопкой мыши узел проекта MyDevelopmentDatabase и выберите команду Свойства.

  2. На странице свойств перейдите на вкладку Развертывание.

  3. В списке Действие развертывания щелкните Создать скрипт развертывания (SQL) и развернуть в базу данных.

  4. В группе Параметры конечной базы данных нажмите кнопку Изменить.

  5. Задайте подключение к целевому серверу, на котором необходимо развернуть этот проект, а затем нажмите кнопку ОК.

  6. В меню Файл выберите команду Сохранить все.

  7. В окне Обозреватель решений щелкните правой кнопкой мыши узел проекта MyDevelopmentDatabase и выберите команду Построить.

  8. В окне Обозреватель решений щелкните правой кнопкой мыши узел проекта MyDevelopmentDatabase и выберите команду Развернуть.

    База данных будет развернута на заданном сервере.

Следующие действия

Развертывание будет включать схему Person, определенную в схеме таблицу и хранимую процедуру. Теперь можно добавить проекты в систему управления версиями, а затем установить разрешения, определив, какие разработчики могут изменять определения хранимых процедур.

См. также

Основные понятия

Начало командной разработки больших баз данных