2016-03-18 4 views
1

Мне нужно восстановить базу данных SQL 2008 R2 для системы POS, которая сломалась без надлежащих резервных копий. Файл .BAK восстановлен, но поврежден. Однако мне удалось получить большую часть данных и вернуть их в удобную форму.Объединить базы данных SQL с одним индексом

Моя проблема сейчас следующая: У меня есть база данных A, которая является новой установкой для системы POS и базы данных B, которая является восстановленным .BAK-файлом. В большинстве таблиц в B отсутствуют их значения индекса, а A имеет нетронутую структуру, но (очевидно) отсутствует все ценные данные.

Как я могу объединить два, чтобы получить полностью проиндексированную базу данных с правильной структурой?

ответ

0

Один простой способ - использовать встроенный инструмент командной строки tablediff.exe. Он может сравнивать две таблицы/представления и распечатывать различия.

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

  • Строка сравнение строк между исходной таблицей в экземпляре Microsoft SQL Server выступает в качестве репликации издателя и назначения таблицу в одном или нескольких экземплярах SQL Server, выступающих в качестве Абонентов репликации.
  • Выполнение быстрого сравнения путем сравнения строк и схемы строк.
  • Выполнение сравнений на уровне столбцов.
  • Сгенерируйте сценарий Transact-SQL, чтобы исправить несоответствия на конечном сервере, чтобы привести исходную и целевую таблицы в конвергенцию.
  • Результаты поиска в выходной файл или в таблицу в базе данных назначения.
+0

Спасибо за помощь! Кажется, что в базе данных больше проблем, чем отсутствующих индексов, но это был отличный шаг в правильном направлении! – Knut

Смежные вопросы