|
|
|
Синхронизация данных
|
|||
|---|---|---|---|
|
#18+
Hi, all! Поступают ненормализованные данные в DBFах, которые заливаются в MS SQL 2005 в зеркальную базу такойже структуры (1 в 1). Затем это добро распихивается в другую, уже нормализованную базу MS SQL 2005. К последней базе есть некое приложение, которое редактирует данные. Затем их нужно выгрузить обратно в зеркальную ненормализованную базу, а из неё - в DBFы. Так вот: пока требуется уметь синхронизировать базы со вновь поступающими DBFами. Тоесть - DBFы присылаются всегда полными (содержат старые данные + модификации - что-то удалено, а что-то добавлено и что-то отредактировано). Нужно смёрджить DBFы с зеркальной SQL-базой, а затем синхронизировать нормализованную базу с зеркальной. При экспорте изменения накатываются из нормализованной в зеркальную базу и она целиком вылевается в DBFы. Тайм-стэмпов в DBFах нет и вряд ли их добавят. Как можно такое реализовать? Thanks and good luck! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.04.2007, 22:36 |
|
||
|
Синхронизация данных
|
|||
|---|---|---|---|
|
#18+
AlexF2Hi, all! Поступают ненормализованные данные в DBFах, которые заливаются в MS SQL 2005 в зеркальную базу такойже структуры (1 в 1). Затем это добро распихивается в другую, уже нормализованную базу MS SQL 2005. К последней базе есть некое приложение, которое редактирует данные. Затем их нужно выгрузить обратно в зеркальную ненормализованную базу, а из неё - в DBFы. Так вот: пока требуется уметь синхронизировать базы со вновь поступающими DBFами. Тоесть - DBFы присылаются всегда полными (содержат старые данные + модификации - что-то удалено, а что-то добавлено и что-то отредактировано). Нужно смёрджить DBFы с зеркальной SQL-базой, а затем синхронизировать нормализованную базу с зеркальной. При экспорте изменения накатываются из нормализованной в зеркальную базу и она целиком вылевается в DBFы. Тайм-стэмпов в DBFах нет и вряд ли их добавят. Как можно такое реализовать? Thanks and good luck!Ну, если это "ручками" делать, то можно для каждой "прилетающей" (новой) таблицы находить разность с таблицей в SQL Server (старой), благо и удобный оператор EXCEPT в 2005 версии наконец-то появился. Разность (старая EXCEPT новая) дает записи-кандидаты на удаление. Разность (новая EXCEPT старая) дает записи-кандидаты на insert и и update. Отличить их трудно. Можно сделать тупо: смотреть по первичному ключу, и если он не изменился, значит update, если такого PK в старой нет, значит insert. Но это предполагает неизменность PK, а так ли это у вас... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2007, 05:49 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=122&tid=1544623]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
164ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 458ms |

| 0 / 0 |
