|
|
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
Добрый всем. Почитал похожие темы на данном форуме но ответа так и не нашел . Задача создать триггер который будет записывать в таблицу А изменения ( delete , update , insert ) наложенные на таблицу Б . Пока что написал это : Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Компилится без проблем и ошибок нету, но он не работает . При попытке вставить строку ничего не происходит . Дальше не знаю куда копать . Ткните пжл носом где проблема . Спасибо . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:24 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
maverick2104При попытке вставить строку ничего не происходитА что, по-твоему, должно было бы произойти? http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:29 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
Elicmaverick2104При попытке вставить строку ничего не происходитА что, по-твоему, должно было бы произойти? http://www.bugtraq.ru/forum/faq/general/smart-questions.html] RTFM Спасибо за ссылку но она у меня давно в закладках сидитю Я хочу что бы именения накладывались на Таблицу Б и дублицировались на Таблицу А ( тут еще прописан rowid таблицы Б , чтоб знать что за строка изменилась.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:36 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
maverick2104( тут еще прописан rowid таблицы Б , чтоб знать что за строка изменилась.)Особенно полезно знать rowid после delete. Ну и знание прежнего значения rowid инсерта бесценно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:41 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
-2-maverick2104( тут еще прописан rowid таблицы Б , чтоб знать что за строка изменилась.)Особенно полезно знать rowid после delete. Ну и знание прежнего значения rowid инсерта бесценно. А как быть с update ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:43 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
maverick2104При попытке вставить строку ничего не происходит Смотришь-то откуда? Из другой сессии? Если да, то не увидишь пока первая сессия не зафиксирует (COMMIT) изменения. SY. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:45 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
SY, Да дело проблема оказалось в COMMIT, спасибо . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:48 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
maverick2104, Для insert актуальны :new.* значения Для delete актуальны :old.* значения Для update актуальны :old.* и :new.* значения (что и как сохранять Вам решать) зы откуда знаете что ничего не происходит? ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 15:52 |
|
||
|
Триггер ( остлеживание изменений)
|
|||
|---|---|---|---|
|
#18+
1. Вам надо бы понять что есть ROWID, это не метка записи, это её адрес (тынц) Следовательно, у удаленной строки нет этого адреса а хранить старый - нет смысла (читаем выше) да и что с ROWID бывает, так же полезно ознакомиться. Да и зачем ROWID если есть ID ? 2. Также, надо понять что есть триггер (тынц) что бы понимать о новых и старых значениях и прочем. Ну и, вас не смущает что вы по сути тупо дублируете 3 раза вставку? Тут уж сами смотрите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 16:57 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39662053&tid=1883836]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
157ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 222ms |
| total: | 471ms |

| 0 / 0 |
