2010-09-08 3 views
0

Мне нужно синхронизировать данные из одной таблицы Oracle db1 tb1 в другую таблицу db2 tbl2. Чтобы упростить работу, я могу обрезать данные на db2 tbl2, а затем скопировать все данные из db1 tbl1. Обе таблицы имеют одинаковую структуру столбцов данных.Синхронизация данных между двумя таблицами Oracle db

Поскольку две таблицы находятся в разных базах данных, я думаю использовать медиафайлы, такие как txt или xml, в качестве носителя. Сначала я экспортирую данные из db1 tbl1 в носитель, а затем вставляю данные с носителя, например, вставляя данные из большого объема текста.

Этот простой проект будет консольным приложением в .Net (я использую VS 2008). Я предпочитаю сделать это приложение общим, так что только настройки конфигурации: две строки подключения и два имени таблицы. Я буду использовать текстовый файл или xml в качестве носителя, чтобы избежать предоставления подробной информации о типах данных для каждого столбца. Я не уверен, есть ли API или классы, доступные для экспорта данных и импорта данных для Oracle db?

ответ

1

Забудьте .Net. Используйте DataPump или старый imp/exp.

Проблема с форматированием XML/текста - это то, что вы делаете со сложными типами данных (например, XML). Вы потратили огромное количество времени на разработку и тестирование универсального решения, которое правильно избегает данных, обслуживает BLOB и другие экзотические типы данных ...

+0

Ссылка на базу данных также будет вариантом –

1

Зачем изобретать колесо? Oracle имеет двунаправленную репликацию.

+0

Консольное приложение будет планировать задание для синхронизации данных. Теперь у меня нет разрешения на добавление задания на Oracle db для выполнения двухсторонней репликации. –

+2

Вы не используете функциональность, за которую, возможно, заплатили тысячи долларов, чтобы вручную написать свою собственную версию. Ну, сэр, удачи. –

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