Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: SQL Server
База данных SQL Azure
Управляемый экземпляр SQL Azure
Azure Synapse Analytics
Сравнение схем позволяет сравнить два определения базы данных. Источником и целевым объектом сравнения может быть любое сочетание подключенной базы данных, проекта базы данных SQL или .dacpac файла. После завершения сравнения результаты отображаются как набор действий, которые делают целевой объект таким же, как источник. Различия между моделями базы данных представлены в виде diff, как в системе контроля версий.
Если целевой объект сравнения схем является проектом SQL или базой данных, можно обновить целевой объект непосредственно из интерфейса сравнения схем или создать скрипт обновления, который имеет тот же эффект.
Сравнение схем предоставляет следующие возможности:
- Сравните схемы между двумя
.dacpacфайлами, базами данных или проектами базы данных SQL. - Просмотр результатов в виде набора действий для сопоставления целевого объекта с источником.
- Выборочное исключение действий, представленных в результатах.
- Установка параметров, определяющих область сравнения.
- Примените изменения непосредственно к целевому объекту или создайте скрипт для применения изменений позже.
- Сохраните сравнение как файл
.scmpдля повторного использования.
Необходимые условия
- SQL Server Management Studio 22.7 или более поздней версии
- Рабочая нагрузка DevOps базы данных (требуется только при сравнении проектов базы данных SQL)
Сравнение схемы запуска
Сравнение схем можно открыть в SSMS из нескольких точек входа.
обозреватель объектов
Щелкните правой кнопкой мыши базу данных в обозреватель объектов выберите Tasks>Schema Compare (preview). Выбранная база данных автоматически устанавливается в качестве источника.
Обозреватель решений
Щелкните правой кнопкой мыши проект базы данных SQL в Обозреватель решений и выберите Schema Compare (preview). Выбранный проект автоматически устанавливается в качестве источника.
Note
Для работы с проектами базы данных SQL в Обозреватель решений требуется рабочая нагрузка Database DevOps.
Меню "Сервис"
В меню "Сервис" выберите "Сравнение схем ( предварительная версия)". Откроется окно "Сравнение схем" без предустановленного источника или целевого объекта.
Выбор источника и целевого объекта
После открытия сравнения схемы выберите источник и целевой объект для сравнения. Каждая из них может быть подключенной базой данных, файлом .dacpac или проектом базы данных SQL.
- База данных: подключение к работающему экземпляру базы данных. Источником является определение базы данных, которое вы хотите использовать в качестве основы для изменений в целевом объекте.
-
Приложение уровня данных (DACPAC): перейдите к скомпилированному
.dacpacфайлу..dacpacсодержит моментальный снимок схемы базы данных. - Проект базы данных: выберите открытый проект базы данных SQL. Требуется рабочая нагрузка Database DevOps.
Целевой объект — это определение базы данных, к которому необходимо оценить и потенциально применить изменения.
Запустить и просмотреть сравнение
Нажмите кнопку "Сравнить " на панели инструментов, чтобы запустить процесс сравнения.
По завершении сравнения область результатов показывает структурные различия между источником и целевым объектом. Результаты сравнения группируют все различия по типу действия, например Удаление, Изменение или Добавление.
Каждая строка определяет объект в исходной или целевой схеме (или оба) и действие, которое процесс принимает на целевую схему, чтобы сделать целевой объект таким же, как и исходный объект. При переименовании объекта или его перемещении в новую схему исходные и целевые имена отличаются. Исходное имя отображается полужирным шрифтом, чтобы выделить разницу.
По умолчанию список результатов скрывает объекты, одинаковые в обеих схемах или не поддерживаемые для обновления (например, встроенные объекты). Выберите соответствующие кнопки фильтра на панели инструментов, чтобы отобразить эти объекты.
Чтобы изменить порядок группирования, выберите раскрывающийся список Группировать результаты на панели инструментов. Выберите тип , чтобы сгруппировать результаты по типу объекта, например по таблицам, представлениям или хранимым процедурам.
Исключить различия
По умолчанию действие "Обновить целевой объект" включает в свою область действия все различия. Чтобы исключить различия, которые не требуется синхронизировать, снимите столбец Include для каждой строки. Строка сразу становится серой. Когда Schema Compare обновляет целевой объект, эта строка не учитывается при каких-либо ожидающих изменениях.
Если исключенная строка имеет зависимые объекты, такие как строка таблицы , на которую ссылается строка представления , то исключенная строка отключена, но ее флажок не очищается, пока не будет снята проверка всех зависимых строк. При рефакторинге строки, например переименовании или перемещении ее в другую схему, флажок отключен для этой строки и ее зависимых дочерних строк.
Параметры сравнения
Выберите параметры на панели инструментов, чтобы настроить, какие объекты сравниваются и какие типы различий игнорируются. Возможные варианты:
- Игнорировать пробелы
- Игнорировать схемы секционирования
- Игнорировать порядок столбцов
Можно также настроить типы объектов, включенные в сравнение, такие как таблицы, хранимые процедуры, индексы, разрешения и определяемые пользователем типы.
Применение изменений
Чтобы обновить схему целевого объекта, у вас есть два варианта:
- Применить. Примените изменения непосредственно к целевой базе данных или проекту из окна сравнения схем.
- Generate Script: создайте скрипт Transact-SQL, который записывает те же изменения, которые можно просмотреть и запустить позже.
Созданный скрипт отображается в редакторе Transact-SQL, где можно проверить и запустить его в базе данных.
Сохранение сравнений
Определение сравнения для сравнения схем можно сохранить как .scmp файл, известный как файл сравнения схем. Этот файл хранит сведения о параметрах сравнения в XML и включает:
- Сведения о исходном и целевом подключении
- Параметры сравнения
- Исключенные типы объектов
.scmp Откройте файл в SSMS, чтобы снова выполнить то же сравнение позже или поделиться сравнением с другими пользователями. При сохранении .scmp файла в рамках проекта .scmp базы данных SQL файл отображается в Обозреватель решений. Открытие файла запускает сравнение схемы с загруженными параметрами сравнения.