|
Oracle GG и UPDATE_PK ,составные ключи.
|
|||
---|---|---|---|
#18+
Добрый день. Вопрос про событие PK_UPDATE. На Источнике первичный ключ (вероятно создан на куче) из 9 полей. При изменении одного из полей (Update) входящих в составной PK формируется событие PK_UPDATE и это происходит часто. Система настроена таким образом, что в этом случае при Update PK формируется новая вставка по логике insert, что в принципе логично для GG, но с точки зрения источника происходит Delete -> Insert. В итоге на источнике 100 записей, на приемнике после GG 1000, только в случае PK_Update так выходит. Вопросы: 1) Нормально ли update- ить первичные ключи? 2) Как еще можно переливать табличку через GG в которой нет явного PK по одному полю? 3) Как используя Oracle GG переливать таблички без PK или если PK получается только по всем полям? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2021, 10:17 |
|
Oracle GG и UPDATE_PK ,составные ключи.
|
|||
---|---|---|---|
#18+
dismay Добрый день. При изменении одного из полей (Update) входящих в составной PK формируется событие PK_UPDATE Система настроена таким образом , что ... при Update PK формируется новая вставка по логике insert, что в принципе логично для GG, но с точки зрения источника происходит Delete -> Insert. В итоге на источнике 100 записей, на приемнике после GG 1000, только в случае PK_Update так выходит. Событие PK UPDATE в GG - это UPDATE, любая другая логика - самодельная. Настройте систему более подходящим образом. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2021, 12:39 |
|
Oracle GG и UPDATE_PK ,составные ключи.
|
|||
---|---|---|---|
#18+
dismay, В GG в UPDATE есть понятие предыдущего значения поля, как в триггере примерно. Можно сделать процедуру, которую запускать при UPDATE-тах и передавать ей значения до и после UPDATE, а процедуру научить решать конфликты так как вам надо. Примерно так в репликате на UPDATE настройка: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2021, 17:50 |
|
|
start [/forum/topic.php?fid=52&msg=40073006&tid=1880162]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 157ms |
0 / 0 |