Отслеживание того, какой оператор обновляет (и когда) определенную строку таблицы с помощью Oracle 10
-
06-09-2019 - |
Вопрос
Я использую (вынужден) плохо спроектированную базу данных Oracle (10), для которой у меня нет прав администратора (хотя я могу создавать таблицы, триггеры и т.д. В моей схеме).
Теперь я столкнулся с проблемой:эта база данных связана с несколькими пользователями / программами.Я должен выяснить, кто обновляет определенную строку, когда и по возможности: с каким заявлением.Возможно ли это?
Заранее спасибо!
Решение
Сделать это было бы проще, если бы у вас были права администратора для включения аудита.Без возможности аудита вам остается использовать триггеры для обработки протоколирования вставок / обновлений / удаления.В вашем случае, поскольку вас интересует только обновление, вы можете поместить в таблицу триггер для запуска после обновления, который записывает в другую таблицу, что было изменено, кем, откуда и на что и в какой день.
Другие советы
Я бы создал таблицу журнала для таблицы, с которой вы работаете.Он покажет вам тип операции и oracle user...as а также кучу других данных, если вам это нужно.