|
|
|
Trigger
|
|||
|---|---|---|---|
|
#18+
Помогите! Столкнулся с ситуацией. Sybase 5. Есть 3 таблицы A,B,C. А & B связаны между собой. В таблице В на Insert,Update,Delete стоят триггеры которые изменяют таблицу С. Когда канкретно меняем В все ок! Но, когда идет каскадное удаление данных (удаляется одна запись в А и связаные с ней в табл. В), то триггер на удаление не срабатывает...... Можно как то решить эту проблему без написания триггера на удаления для табл. А???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2004, 22:15 |
|
||
|
Trigger
|
|||
|---|---|---|---|
|
#18+
2 вопросика: 1. Sybase 5 - это имеется ввиду Sybase Anywhere 5 ? 2. А Вы уверены, что триггер на "B" не срабатывает ? Может быть он вызывается, но в нем просто не правильно отрабатывается код ? Поясню, куда я клоню - у каскадного удаления (конечно если это Sybase Anywhere) есть небольшая хитрость - срабатывает оно, как триггер AFTER. Соотвествующе когда в дочерних таблицах происходит каскадное удаление, данные в родительской таблице уже для них не существуют. Обойти это можно элементарным образом - отрубить каскадное удаление на таблице "A" и вместо него написать на удаление триггер BEFORE, в котором удалять записи в таблице "B", т.е. фактически самому организовать каскадное удаление. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2004, 23:51 |
|
||
|
Trigger
|
|||
|---|---|---|---|
|
#18+
Да, Sybase SQL Anywhere 5.0 Спасибо. Это я и хотел услышать. Только касскадное удаление, помоему, можно не отключать, а просто написать триггер с before. И еще вопрос. Тогда как лучше организовать каскадное удаление чегез LOOP или просто delete from ..... from ...... where ....=.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2004, 09:35 |
|
||
|
|

start [/forum/topic.php?fid=55&fpage=128&tid=2014635]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
60ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 165ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...