Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Частичное обновление справочников / 7 сообщений из 7, страница 1 из 1
10.02.2018, 11:46
    #39599946
milediira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
Добрый день. Подскажите, пожалуйста, как лучше всего организовать частичное обновление иерархических справочников.
То есть например, есть справочник организаций.
CREATE TABLE ORGANISATIONS
(
ORG_ID NUMBER,
PARENT_ORG_ID NUMBER,
NAME NVARCHAR2
PERIOD_KEY NUMBER
);

Уникальность PERIOD_KEY и ORG_ID.
Когда приходят данные с новой орг структурой, обновить нужно лишь изменившиеся элементы. Получается, что для новых элементов PERIOD_KEY меняется, а для "родителей" PERIOD_KEY остается без изменений. Каким образом, можно задать FC c PARENT_ORG_ID на ORG_ID? То есть получается что ORG_ID не уникально, и связь PARENT_ORG_ID, PERIOD_KEY и ORG_ID, PERIOD_KEY тоже некорректна, т.к. для "родителей" PERIOD_KEY может не меняться. Каким образом, лучше всего организовать частичное обновление справочников?
...
Рейтинг: 0 / 0
10.02.2018, 11:54
    #39599948
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
Неясно назначение PERIOD_KEY.
Из чего следует неясность, в чем сложность foreign key PARENT_ORG_ID -> ORG_ID.
...
Рейтинг: 0 / 0
10.02.2018, 12:19
    #39599955
milediira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
dmdmdm, это период обновления данных
...
Рейтинг: 0 / 0
10.02.2018, 12:38
    #39599956
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
*взщелкнув щипцами для вытягивания информации*

Который обновляется когда ... ?
...
Рейтинг: 0 / 0
10.02.2018, 13:13
    #39599965
milediira
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
dmdmdm, есть справочник в него заносятся даты обновления, у него есть PK PERIOD_KEY. Соответственно, данные могут не меняться, или могут меняться частично, для новых записей соответственно PERIOD_KEY будет новый, старые можно отметить например OUTDATE = дата окончания действия. Вот я хочу пока понять, как наиболее оптимально организовать это частичное обновление, чтобы контролировалось что PARENT_KEY это PRODUCT_KEY (но их может быть несколько(( )
...
Рейтинг: 0 / 0
10.02.2018, 13:53
    #39599976
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
На мой взгляд, обновление должно идти по ключевым полям, обеспечивающим иерархию.
То, что у вас ключ составной, сути не меняет, это проблема вашей архитектуры. Если в ней элемент может иметь разных родителей в разный момент времени - что ж, сами так решили, разруливайте такие ситуации.
...
Рейтинг: 0 / 0
12.02.2018, 07:34
    #39600368
AnSi_Sr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Частичное обновление справочников
По-разному реализовать можно.
Смотри в гугле примеры поиском по "хранение исторических данных".
В ФИАС, например, история адресных объектов хранится также, как и описано в данной теме, можно ознакомиться с реализацией.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Частичное обновление справочников / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]