Пошаговое руководство. Создание изолированной среды разработки базы данных
В этом пошаговом руководстве настраивается изолированная среда разработки, необходимая каждому разработчику базы данных для того, чтобы он мог вносить и тестировать изменения в базе данных, не влияя на других участников рабочей группы. Изолированная среда разработки основана на проекте базы данных, содержащем определения всех объектов рабочей базы данных. Можно создать проект, импортировать в него схему из рабочей базы данных и настроить параметры проекта. Затем создается план создания данных. Наконец, проект базы данных и все связанные файлы помещаются в систему управления версиями для совместного использования вашей командой.
В этом пошаговом руководстве вы играет административную роль, определяя среду, которую каждый разработчик в рабочей группе будет использовать для выполнения своих задач разработки. Перед завершением рабочего элемента разработчик использует генератор данных для заполнения обновленной схемы реалистичными, но имитированными данными, после чего выполняет модульные тесты базы данных, чтобы убедиться, что изменения схемы работают, как ожидалось. Когда рабочие элементы завершены, каждый разработчик возвращает свои изменения в систему управления версиями, откуда их могут извлекать другие участники рабочей группы. Выполняя тесты перед возвратом изменений, каждый участник рабочей группы сокращает риск для общих усилий.
В этом пошаговом руководстве демонстрируется выполнение следующих задач.
Создание проекта базы данных с использованием мастера создания проекта базы данных.
Выполнение мастера создания проекта базы данных для импорта схемы базы данных, указания свойств проекта базы данных, а также свойств построения и развертывания.
Анализ результатов операции импорта.
Добавление проекта в систему управления версиями.
Обязательные компоненты
Необходимо, чтобы была установлена система Visual Studio и имелся доступ к учебной базе данных AdventureWorks2008 для SQL Server 2008. Чтобы добавить проект в систему управления версиями, необходимо установить программное обеспечение для управления версиями, такое как Visual Studio Team Foundation Server.
Сведения об установке учебной базы данных AdventureWorks2008 см. на следующей странице веб-сайта Codeplex: Образцы продукта Microsoft SQL Server.
Можно также использовать SQL Server 2008 R2 и базу данных AdventureWorks2008R2. В данном пошаговом руководстве отмечены различия; для AdventureWorks2008R2 следует выполнить другое действие.
Создание проекта базы данных
В меню Файл последовательно выберите команды Создать и Проект.
Отобразится диалоговое окно Новый проект.
В области Установленные шаблоны разверните узел База данных и щелкните SQL Server.
Примечание
Если вы используете Visual Studio Professional, зайдите в Установленные шаблоны, последовательно раскройте узлы База данных и SQL Server и щелкните Дополнительно.
В списке шаблонов выберите Мастер SQL Server 2008.
В поле Имя введите AdvWorksSandbox.
Примите заданные по умолчанию Расположение и Имя решения.
Установите флажок Создать каталог для решения, если он еще не установлен.
Снимите флажок Добавить в систему управления версиями, если он установлен, и нажмите кнопку ОК.
Появится мастер создания проекта базы данных.
С помощью этого мастера вам предстоит настроить проект базы данных и импортировать схему исходной базы данных.
Настройка проекта и импорт схемы базы данных
Прочитав страницу "Добро пожаловать!", нажмите кнопку Далее.
Убедитесь, что выбран пункт Проект базы данных для управления изменениями в определенной пользователем базе данных.
В разделе "Файлы скриптов SQL" убедитесь, что выбран пункт По схеме, и нажмите кнопку Далее.
Важно!
Способ упорядочения проекта после его создания изменить невозможно.
На странице Задание параметров базы данных в поле Укажите схему по умолчанию для объектов, создаваемых в проекте базы данных введите HumanResources и нажмите кнопку Далее.
Примечание
Эти параметры можно изменить после создания проекта.Дополнительные сведения см. в разделе Практическое руководство. Настройка свойств базы данных для проектов баз данных.
На странице Импорт схемы базы данных установите флажок Импортировать существующую схему.
В списке Подключение к исходной базе данных щелкните подключение, соответствующее серверу и базе данных AdventureWorks2008 или AdventureWorks2008R2. Если подключение еще не существует, щелкните Новое подключение для его создания. Если не задать подключение, проект будет создан, но схема импортирована не будет.
Примечание
Можно импортировать схему базы данных позднее, если проект базы данных еще не содержит объектов базы данных.Дополнительные сведения см. в разделе Практическое руководство. Импорт объектов и параметров баз данных.
Примите установленные по умолчанию параметры импорта объектов и настроек, и нажмите кнопку Далее.
На странице Настройка построения и развертывание в разделе Подключение к конечной базе данных нажмите кнопку Изменить и укажите подключение к серверу базы данных, на котором нужно создать изолированную среду разработки.
В поле Имя конечной базы данных введите AdvWorksSandbox, если это имя еще не задано.
В списке Параметры сортировки по умолчанию при развертывании щелкните Использовать параметры сортировки проекта.
В результате этого действия обработчик развертывания будет использовать параметры сортировки проекта базы данных при сравнении проекта с конечной базой данных.
Снимите флажок Блокировать добавочное развертывание при возможности потери данных.
Поскольку изолированная среда разработки будет содержать только созданные тестовые данные, потеря данных допустима.
Нажмите кнопку Готово для создания проекта базы данных и импорта в него базы данных.
Будет создан проект базы данных. Процесс может занять несколько минут.
Просмотрите сводные результаты и нажмите кнопку Готово.
В фоновом режиме Visual Studio все еще выполняет анализ схемы базы данных. В строке состояния появится сообщение, показывающее количество операций, которые необходимо завершить до полного окончания анализа схемы базы данных.
Затем нужно изучить созданный проект базы данных.
Анализ результирующего проекта
В обозревателе решений разверните узел AdvWorksSandbox, а затем дочерний узел "Объекты схемы".
Исследуйте дочерние узлы, расположенные ниже узла "Объекты схемы" в иерархии.
Обозреватель решений содержит все файлы, определяющие объекты, находящиеся в схеме базы данных, из которой они импортированы.
В меню Вид выберите команду Представление схемы базы данных.
В представлении схемы разверните узел AdvWorksSandbox.
Изучите вложенные узлы, расположенные ниже узла AdvWorksSandbox в иерархии.
В представлении схемы содержатся все объекты, определенные в файлах, отображаемых в обозревателе решений.
В обозревателе решений щелкните узел AdvWorksSandbox.
В меню Проект выберите команду Свойства AdvWorksSandbox.
На странице "Свойства" перейдите на вкладку Развертывание.
Примечание
Если изменить какие-либо параметры развертывания на странице Параметры проекта, они сохраняются в DBPROJ-файле проекта и возвращаются в систему управления версиями.В следующем пошаговом руководстве описывается настройка параметров среды определенного разработчика.
В поле Имя конечной базы данных введите AdvWorksSandbox, если это имя еще не задано.
В меню Файл выберите команду Сохранить выбранные элементы.
Каждый разработчик будет задавать строку подключения к серверу базы данных, где должна размещаться его копия базы данных.
Развертывание проекта в изолированной среде разработки
В обозревателе решений щелкните узел AdvWorksSandbox.
Если данный проект будет развернут на тот же сервер базы данных, на котором запущена исходная база данных AdventureWorks2008 или AdventureWorks2008R2, необходимо изменить имя файла во избежание конфликтов. Если вместо этого выполнить развертывание на сервер, который не содержит исходную базу данных AdventureWorks2008 или AdventureWorks2008R2, можно перейти к шагу 7.
Разверните папку Объекты схемы, затем последовательно разверните папки Объекты уровня базы данных, Хранилище и Файлы.
Появляются три файла: AdventureWorks2008_Data.sqlfile.sql, AdventureWorks2008_Log.sqlfile.sql и FileStreamDocuments.sqlfile.sql. При использовании SQL Server 2008 R2 появляются следующие файлы: AdventureWorks2008R2_Data.sqlfile.sql, AdventureWorks2008R2_Log.sqlfile.sql и FileStreamDocuments2008R2.sqlfile.sql.
Примечание
В более ранних версиях AdventureWorks FILESTREAM не используется.Если импортируется более ранняя версия AdventureWorks, можно перейти к шагу 7.
Дважды щелкните файл FileStreamDocuments.sqlfile.sql.
Файл откроется в редакторе Transact-SQL.
Измените определение файла в соответствии с приведенным ниже кодом:
ALTER DATABASE [$(DatabaseName)] ADD FILE (NAME = [FileStreamDocuments], FILENAME = '$(DefaultDataPath)SandboxDocuments') TO FILEGROUP [DocumentFileStreamGroup];
При использовании AdventureWorks2008R2 вместо этого следует использовать следующее определение:
ALTER DATABASE [$(DatabaseName)] ADD FILE (NAME = [FileStreamDocuments2008R2], FILENAME = '$(DefaultDataPath)SandboxDocuments') TO FILEGROUP [Document2008R2FileStreamGroup];
В меню Файл выберите команду Сохранить все.
В меню Проект выберите команду Свойства AdvWorksSandbox.
Откроется окно "Свойства проекта".
Перейдите на вкладку Развертывание.
В списке Действие развертывания щелкните Создать скрипт развертывания (SQL) и развернуть в базе данных.
Важно!
Если не изменить действие развертывания, будет создан только скрипт развертывания; в конечной базе данных ничего развернуто не будет.
В меню Построение выберите команду Развернуть AdvWorksSandbox.
Скрипт построения создается для проекта базы данных и затем развертывается на сервере базы данных, где решено разместить изолированную среду разработки. По завершении разработки сообщение "Deployment Succeeded" выводится в окне Выходные данные.
Вы определили проект базы данных и импортировали схему из рабочей базы данных. Теперь можно поместить решение в систему управления версиями, чтобы оно стало доступно рабочей группе.
Открытие рабочей группе доступа к проекту
Добавление проекта в систему управления версиями
В обозревателе решений щелкните узел AdvWorksSandbox.
В меню Файл выберите Система управления версиями и щелкните Добавить решение в систему управления версиями.
На этом этапе вы взаимодействуете с установленным программным обеспечением системы управления версиями. В данном пошаговом руководстве описаны шаги добавления проекта в Team Foundation Server. Если нужно использовать другую систему управления версиями, замените описанные шаги эквивалентными им. Если используется Team Foundation Server, появляется диалоговое окно Подключение к Team Foundation Server.
В Подключиться к Team Foundation Server щелкните сервер, на котором находится командный проект, куда нужно добавить решение.
Примечание
Если командного проекта, в который можно добавить проект базы данных, не имеется, см. раздел Планирование и отслеживание проектов.
В Проекты группы щелкните командный проект, который нужно добавить в проект базы данных, и нажмите кнопку ОК.
Откроется диалоговое окно Добавление решения AdvWorksSandbox в систему управления версиями.
Нажмите кнопку ОК, чтобы принять значения по умолчанию.
Проект базы данных и содержащиеся в нем файлы помещены под контроль систем управления версиями. Первоначально они извлечены. Чтобы другие участники рабочей группы получили к ним доступ, их нужно вернуть.
В меню Вид выберите команду Другие окна и щелкните Ожидающие изменения.
Появится окно Ожидающие изменения.
В поле "Комментарий" введите Первоначальное создание проекта базы данных, импорт схемы и создание данных.
В окне Ожидающие изменения на панели инструментов щелкните Вернуть.
В диалоговом окне Ход возврата отобразится проект базы данных и содержащиеся в нем файлы, возвращаемые в систему управления версиями. Значки в обозревателе решений обновляются, показывая, что файлы возвращены в систему управления версиями.
Следующие действия
После возврата проекта базы данных в систему управления версиями следующим шагом является определение мер контроля качества, прежде чем рабочая группа приступит к внесению изменений. В следующем вводном пошаговом руководстве, Пошаговое руководство. Создание базового плана для изолированной среды разработки, вы создадите модульные тесты и построите, развернете и выполните их в изолированной среде разработки базы данных.
См. также
Задачи
Практическое руководство. Создание проектов базы данных и сервера
Основные понятия
Начало командной разработки базы данных
Общие сведения о построении и развертывании базы данных
Общие сведения о параметрах проекта базы данных
Журнал изменений
Дата |
Журнал |
Причина |
---|---|---|
Добавлена поддержка для SQL Server 2008 R2 и AdventureWorks2008R2. |
Изменение функции SP1. |