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


Сравнение и синхронизация данных одной или нескольких таблиц с данными в справочной базе данных

Этот раздел применим к:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional 

Visual Studio Express

Тема применяется Тема применяется Тема не применяется Тема не применяется

С помощью Visual Studio можно сравнивать данные исходной базы данных с данными целевой базы данных, а также указывать, какие таблицы нужно сравнить. Можно просмотреть данные и решить, какие изменения следует синхронизировать. Затем можно либо обновить конечную базу данных, чтобы базы данных были синхронизированы, либо экспортировать скрипт обновления в редактор Transact-SQL или файл.

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

Можно сравнивать данные в двух базах данных, но нельзя для сравнения указать проект базы данных (DBPROJ) или файл DBSCHEMA, поскольку они не содержат данных.

Требования

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

  • Таблицы должны иметь совпадающие имена столбцов и совместимые типы данных.

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

  • Таблицы должны иметь одинаковые первичный ключ, уникальный индекс или уникальное ограничение.

  • Представления должны иметь одинаковые уникальные кластеризованные индексы.

  • Можно сравнить таблицу с представлением, если у них одинаковые имена.

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

Общие задачи

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

Общие задачи

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

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

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

Сравнение данных в таблицах и выборочное целевой базы данных для обеспечения соответствия источнику: после указания исходной и целевой базы данных и выполнения сравнения можно просмотреть результаты в окне Сравнение данных. Просматривать можно не только подробные сведения об отличиях, но и скрипт обновления, который можно использовать для синхронизации данных. После определения различий между двумя базами данных можно указать действия, применяемые в отношении каждого отличия. Затем можно обновить целевую базу данных или экспортировать скрипт обновления в редактор Transact-SQL или файл. Скрипт можно экспортировать, если необходимо, чтобы другой пользователь просмотрел его перед применением изменений.

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

Интерпретация результатов сравнения

В следующей таблице приводится описание пяти столбцов окна Сравнение данных.

Столбец

Примечания

Объект

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

Различные записи

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

Только в исходном

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

Только в конечном

Отображает количество записей в целевой базе данных, не найденных в исходной базе данных. В скобки заключено количество записей, отмеченных для удаления при записи обновлений или экспорте скрипта обновления.

Идентичные записи

Отображает количество записей в конечной базе данных, имеющих тот же ключ и те же данные, что и в источнике. При записи обновлений или экспорте скрипта обновления эти записи не обновляются.

Подробные сведения представлений и таблиц

Если щелкнуть любую таблицу или представление в окне Сравнение данных, в области подробных сведений отобразятся все строки, содержащиеся в таблице или представлении. На вкладках панели сведений отображаются различные категории ("различные записи", "только в исходном", "только в конечном", "идентичные записи"). В каждой строке можно установить или снять флажок, отметив, следует ли включать изменения в скрипт обновления.

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