Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.18;
Скачать: CL | DM;

Вниз

trigger в Oracle   Найти похожие ветки 

 
Илья Лу.   (2002-01-22 13:43) [0]

Уважаемые господа.

Я недавно пересел с Interbase на Oracle и обнаружил для себя следующую неприятную вещь - невозможность в

trigger on TABLE before(after) update

делать update TABLE set... where ...

Наверное это сделано с целью избежания зацикливания, но я считал, что об этом могу позаботиться сам как разработчик.
Наверняка есть какие-то способы объехать это ограничение, но в doc-ах я этого не нашел, да и лучший способ узнать - спросить у того, кто знает. Так может кто-нибудь знает ?
Заранее благодарен.


 
Внук ©   (2002-01-22 14:19) [1]

В документации это называется mutating tables. В большинстве случаев ORACLE не позволяет изменять (читать) записи таблицы из триггера в момент выполнения DML-запроса. Навскидку могу предложить два пути решения проблемы - переделать триггер, чтобы он был не FOR EACH ROW, или создать триггер INSTEAD OF, только в этом случае все Update придется делать самому. Недостатки обоих способов очевидны.


 
Владислав ©   (2002-01-22 14:25) [2]

Для того, чтобы "объехать это ограничение", надо знать, что ты хочешь сделать.


 
Sly ©   (2002-01-23 09:45) [3]

Информация для размышления... есть такай штука jobs (DBMS_JOB). Так вот, в триггере их можно создавать, а выполняться они будут асинхронно, вне контекста этой транзакции.



Страницы: 1 вся ветка

Текущий архив: 2002.02.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
4-57269
Dimaond Cat
2001-12-18 01:25
2002.02.18
Закрасить кнопку, (также вопрос к Ю.ЗОТОВУ)


3-56977
Laimer
2002-01-23 13:13
2002.02.18
TDBGrid


3-57009
Fran
2002-01-24 09:59
2002.02.18
Как в RXDBGrid текущию строку сделать с другим Font или цветом?


3-57028
kserg@ukr.net
2002-01-22 16:22
2002.02.18
Мне надо в MSSQL задать для моей БД установку SET DATEFORMAT mdy.


6-57163
valiev
2001-11-28 14:49
2002.02.18
Как в Дельфи использовать метод POST