объединить базы



Автор Leg задал вопрос в разделе Другие языки и технологии

Объединить две базы SQL в одну ( или как без потери данных объединить два файла sql в один) и получил лучший ответ

Ответ от Новиков Федор[гуру]
Надо:
1. Сравнить структуру обеих баз данных. Одинаковые ли они, если различаются - определить, какую структуру должна иметь объединенная база данных.
2. Проанализировать суррогатные ключи и справочники, определить, как их объединить без конфликтов.
3. Проанализировать программу, работающую с БД: как она будет работать из разных городов.
4. Написать скрипт по перегону данных из одной базы в другую.

Ответ от In Plain Sight[гуру]
Короткий ответ: нанять профессионального архитектора баз данных, он все сделает.
Длинный ответ: в вопросе недостаточно данных. Надо знать как минимум две вещи: (1) тождественна ли структура двух баз, и (2) существует ли угроза коллизии (т. е., ситуации, когда под одними и теми же ключами в двух базах находятся разные данные). Если структура тождественна, а коллизий нет (например, в воронежской базе первичный ключ имеет значения от 1 до 2,649,758, а в липецкой он начинается с 5,000,000), базы можно достаточно просто слить. А вот если есть отличия в структуре и/или коллизии, тут начинается всякая бяка, которую разработчик должен ОЧЕНЬ детально обсудить с руководством компании-клиента. Например, коллизия: в обеих базах данных есть документ с номером 42, но в воронежской базе это счет, выставленный ООО "Ромашка", в липецкой -- счет, выставленный ИП Вано Пиртокварадзе. Причем и для "Ромашки", и для Вано Пиртокварадзе этот номер имеет значение, поскольку используется для выверки поставок и платежей. Пока Вы не найдете решение этой проблемы с точки зрения бизнеса, технология Вам скорее навредит, чем поможет...

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Объединить две базы SQL в одну ( или как без потери данных объединить два файла sql в один)
Стрела телесериал на Википедии
Посмотрите статью на википедии про Стрела телесериал
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*