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


Начало командной разработки баз данных, ссылающихся на объекты SQLCLR

Для управления изменениями объектов баз данных и настроек необходимо создать проект базы данных, после чего в него выполняется импорт объектов и параметров из управляемой базы данных. Если база данных содержит ссылки на одну или насколько сборок SQL среды CLR, то их необходимо объявить в проекте базы данных. Так как проект базы данных представляет собой автономное представление объектов и параметров в базе данных, то можно поместить его в систему управления версиями и далее итеративно развертывать изменения в изолированной среде разработки. Члены команды могут независимо выполнять проверку своих изменений и делать эти изменения доступными для других членов команды только после полной их проверки. Использование данного подхода позволяет повысить качество кода базы данных до ее развертывания в рабочей среде.

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

При создании проекта базы данных указывается тип, соответствующий типу и версии управляемой базы данных. Например, если управляемая база данных основана на SQL Server 2005, указывается пункт Проект базы данных SQL Server 2005 или Мастер SQL Server 2005. Если используется мастер, то можно не только создать проект, но и одновременно настроить некоторые параметры построения и развертывания, а также импортировать объекты базы данных и параметры.

Импорт объектов и параметров баз данных

Можно выполнить импорт объектов и параметров из экземпляра базы данных или из скрипта. Во время выполнения импорта базы данных проверяются определения объектов. Инструкции, анализ которых не может быть выполнен, помещаются в файл ScriptsIgnoredOnImport.sql.

При выполнении импорта объектов, которые ссылаются на объекты SQLCLR, импортированные сборки SQLCLR можно найти в папке Schema Objects\Database Level Objects\Assemblies проекта базы данных. В папке веб-ссылок также содержатся ссылки на каждую импортированную сборку. Если требуется обновить сборку, возможно потребуется удалить существующие ссылки на сборку, добавить проект SQLCLR в решение и добавить ссылку на проект SQLCLR. Если обновлять сборку не нужно, можно оставить существующую ссылку. Такие сборки будут развернуты во всех целевых базах данных.

Общие задачи

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

Общие задачи

Справочные материалы

Дополнительные сведения о проектах базы данных: можно ознакомиться с основными концепциями управления изменениями объектов базы данных и параметрами с использованием проектов базы данных.

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

Добавление ссылки на сборку SQLCLR: можно добавить ссылку на сборку SQLCLR, если необходимо ссылаться на пользовательские функции, процедуры, агрегатные функции, триггеры или определяемые пользователями типы, которые определены в сборке SQLCLR.

Помещение объектов и настроек из существующей базы данных в систему управления версиями: можно использовать мастер проекта базы данных для создания проекта, настройки параметров проекта и импорта объектов базы данных и настроек. Кроме того, можно создать пустой проект базы данных, если требуется импортировать объекты позже или если отсутствует разрешение на доступ к базе данных, из которой будут импортированы объекты. После выполнения импорта объектов и параметров можно добавить проект в систему управления версиями.

Связанные сценарии

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

Начало коллективной разработки баз данных, ссылающихся на общие серверные объекты

Начало командной разработки баз данных, ссылающихся на объекты SQLCLR