Начало командной разработки баз данных, ссылающихся на другие базы данных
Для управления изменениями в схеме баз данных необходимо сначала создать проект базы данных, а затем импортировать в него объекты и параметры из управляемой базы данных. Если объект в текущей базе данных ссылается на объект в другой базе данных, нужно также объявить в свойствах проекта базы данных сервер и базу данных, на которые указывает ссылка. Так как проект базы данных является представлением базы данных вне сети, то можно поместить его в систему управления версиями, а затем итеративно развертывать изменения в изолированной среде разработки. Участники команды могут независимо выполнять проверку своих изменений и предоставлять другим участникам команды доступ к этим изменениям после полной их проверки. Использование данного подхода позволяет контролировать качество кода базы данных перед ее развертыванием в производственной среде.
Задание типа проекта базы данных
При создании проекта базы данных указывается тип проекта, соответствующий используемой версии SQL Server. Например, если в основе управляемой базы данных лежит SQL Server 2005, нужно указать либо Проект базы данных SQL Server 2005 либо Мастер SQL Server 2005. Если используется мастер, можно не только создать проект, но и настроить некоторые параметры построения и развертывания, а также импортировать объекты базы данных и параметры.
Импорт объектов и параметров баз данных
После создания проекта можно импортировать в него объекты и параметры из экземпляра базы данных или из скрипта. После выполнения импорта базы данных проверяются определения объектов. Инструкции, анализ которых невозможен, добавляются в файл ScriptsIgnoredOnImport.sql.
Объявление ссылок на проекты базы данных и DBSCHEMA-файлы
После импорта базы данных нужно объявить перекрестные ссылки на базы данных в свойствах проекта для устранения проблем, вызвавших предупреждения. После объявления каждой ссылки нужно определить переменные для сервера и базы данных, на которые указывают ссылки. Для каждой переменной можно задать свое значение, соответствующее среде, в которой будет развернут проект.
При объявлении ссылки в качестве ее целевого объекта нужно задать либо другой проект базы данных, либо файл схемы базы данных (DBSCHEMA). Файлы схемы базы данных создаются при построении проекта базы данных или импорте схемы с помощью программы командной строки. Кроме того, этот целевой объект можно задать либо по имени, либо по переменной, которая заменяется соответствующим значением при построении проекта. Для простоты обслуживания можно обновить объекты в проекте базы данных, чтобы они использовали переменные, ссылающиеся на объекты в других базах данных. Дополнительные сведения см. в разделе Переименование ссылок на сервер или базу данных. При построении проекта базы данных переменные заменяются заданными значениями.
Если следующее утверждение справедливо, в качестве целевого объекта ссылки нужно использовать другой проект базы данных.
- Необходимо внести изменения в схему базы данных, которая будет содержать ссылку, и схему базы данных, на которую указывает ссылка. При развертывании проекта базы данных, содержащего ссылку, вы также разворачиваете проект базы данных, на который ссылаетесь.
Если справедливо любое из следующих утверждений, нужно добавить ссылку на файл схемы базы данных (.dbschema).
Необходимо сослаться на базу данных, проект которой не входит в состав текущего решения.
Необходимо развернуть один проект, не разворачивая проекты, от которых он зависит.
Ссылка указывает на схему базы данных, изменение которой маловероятно. В данном сценарии можно вернуть файл схемы базы данных (.dbschema) в систему управления версиями.
Дополнительные сведения см. в разделе Использование ссылок в проектах баз данных.
Общие задачи
Общие задачи |
Справочные материалы |
---|---|
Дополнительные сведения о проектах базы данных. Здесь можно узнать об основных концепциях управления изменениями схемы с помощью проектов базы данных. |
|
Практические упражнения. Чтобы ознакомиться с порядком создания изолированной среды разработки, в которой можно управлять изменениями базы данных, ссылающейся на другие базы данных, выполните инструкции в вводном пошаговом руководстве. |
|
Создание DBSCHEMA-файла для указанной базы данных. Создание DBSCHEMA-файла позволяет добавить ссылку на базу данных, даже если для нее не был создан проект базы данных. Например, если нужна ссылка на базу данных, которая в данный момент не разрабатывается. При импорте схемы для базы данных с помощью командной строки создается DBSCHEMA-файл, ссылку на который можно добавить в проект базы данных |
|
Добавление существующей схемы базы данных в систему управления версиями. С помощью мастера создания проекта базы данных можно создать проект, настроить его параметры и импортировать схему. Кроме того, можно создать пустой проект, если схему нужно импортировать позже или если отсутствует разрешение на доступ к базе данных, из которой будет импортирована схема. Затем следует создать переменные, чтобы задать другие сервера и базы данных, на которые будут ссылаться объекты текущей базы данных. После создания эти переменные используются при объявлении ссылок в свойствах проекта. Кроме того, обновив определения объектов, можно указать, что вместо явных ссылок нужно использовать переменные. С помощью переменных можно задать различные базы данных, соответствующие разным средам, в которых развертывается эта база данных. Например, можно автоматически заменить переменные значениями, характерными для разработки, тестирования, а также тестовой и производственной среды. После объявления перекрестных ссылок на базы данных можно добавить проект базы данных в систему управления версиями. |
Связанные сценарии
Начало командной разработки баз данных
Начало коллективной разработки баз данных, ссылающихся на общие серверные объекты
Начало командной разработки баз данных, ссылающихся на объекты SQLCLR