2017-02-10 8 views
2

Я в оракула 11g я наткнулся на странные ошибки уезжала в user_tables:Oracle user_errors таблица содержит ошибки для удаленных объектов

BIN$R/SOMEUID==$0 TRIGGER 4 5 5 PL/SQL: Statement ignored ERROR 0 
BIN$R/SOMEUID==$0 TRIGGER 3 5 37 PLS-00222: no function with name 'PROCNAME' exists in this scope ERROR 222 

Факт, мы имели некоторый триггер на этой схеме с этими ошибками, но он был удален некоторое время назад. Повторно создавая триггер с таким же именем и без ошибок, не удаляйте эти строки из таблицы user_errors.

Я не могу найти никаких замечаний об этом в Интернете - облако, кто-нибудь, пожалуйста, объясните, как это произошло и как я должен чистить эти ошибки?

ответ

3

Это похоже на previous question about LOBS.

BIN$R/SOMEUID==$0 имя означает, что объект находится в the recycle bin. В этом случае, похоже, вы сбросили стол, на который был установлен триггер. Определение триггера сохраняется, но помечено как отбрасываемого объекта, через BIN$ name.

Вы также в какой-то момент опустили функцию PROCNAME, поэтому триггер стал недействительным. Возможно, это было до того, как стол был отброшен.

(Я не могу воспроизвести это в 11.2.0.4, так что это может быть что-то, что изменилось в наборе патчей).

Вы можете look in the recycle bin посмотреть первоначальное название объекта.

Если вы хотите навсегда удалить триггер defintition вам придется purge the recycle bin, либо полностью, либо только для отброшенной таблицы

+0

Да, это было так. Спасибо за объяснение. –