Oracle 10g триггер уровня оператора, как я могу получить доступ к строкам, на которые повлиял триггер уровня оператора - PullRequest
0 голосов
/ 17 февраля 2011

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

Спасибо!

1 Ответ

2 голосов
/ 17 февраля 2011

Вам понадобится несколько триггеров (или составной триггер в 11g с разделами на уровне строк и на уровне операторов). В триггере на уровне строк вы увидите измененную строку и поместите некоторые данные (первичный ключ, ROWID или всю строку в зависимости от ваших потребностей) во временную таблицу, коллекцию, определенную в пакете, или в коллекции, определенной в вашем составном триггере. В вашем триггере на уровне операторов вы будете перебирать строки, которые только что определили ваш триггер на уровне строк. Лично я также хотел бы создать триггер оператора before, который инициализировал бы коллекцию на тот случай, если в той структуре, в которой вы работаете, когда оператор выполняется впервые, все еще были данные).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...