1

I have some trigger in a table but the trigger name is showing some object name instead of original trigger name:

select * from user_triggers where table_name='NVT_VEHICLE';

Trigger name:

BIN$j1ygh/CFFDXgVWVB5LsGMg==$1
BIN$j1ygh/CEFDXgVWVB5LsGMg==$1
NVT_LOG_TRIG
Jagadish
  • 21
  • 4

1 Answers1

1

These weird names are the name of the objects which are dropped by the user. You can get the original names of the objects from a table: USER_RECYCLEBIN

USER_RECYCLEBIN displays information about the recycle bin owned by the current user.

It contains ORIGINAL_NAME and OBJECT_NAME of the recycled objects.

In your case, you can try this query

SELECT
    *
FROM
    USER_RECYCLEBIN
WHERE
    NAME IN (
        'BIN$j1ygh/CFFDXgVWVB5LsGMg==$1',
        'BIN$j1ygh/CEFDXgVWVB5LsGMg==$1'
    );

Cheers!!

Popeye
  • 35,427
  • 4
  • 10
  • 31
  • When i apply this query this is showing no data found. – Jagadish Aug 05 '19 at 15:58
  • Can you please tell me why this is showing this type of name??? – Jagadish Aug 05 '19 at 15:58
  • Because these objects are deleted and oracle maintains it in recycle bin until and unless recycle bin is purged. You can get more information from [here](https://docs.oracle.com/html/E25494_01/tables011.htm) – Popeye Aug 05 '19 at 16:02
  • This trigger is not deleted when i open this object name then this is showing the code. – Jagadish Aug 05 '19 at 16:06
  • create or replace TRIGGER "BIN$j1ygh/CCFDXgVWVB5LsGMg==$1" AFTER UPDATE of route_status ON "NVT_VEHICLE" REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW declare rtname varchar2(100); BEGIN select route_no||'['||src_location||'->'||dest_location||']' into rtname from hdc_source_dest_map where route_no=:old.route_no and rownum=1; Insert into hul_route(vehicle_no,route_no,route_status,route_id,route_name,route_time,sys_time) values (:old.vehicle_no,:old.route_no,:old.route_status,:old.route_id,rtname,:old.route_time,sysdate); EXCEPTION WHEN OTHERS THEN NULL; END; – Jagadish Aug 05 '19 at 16:06
  • Please look into the above trigger it is showing like that.But when i create i created in a name.This is convert automatically – Jagadish Aug 05 '19 at 16:07
  • Yes, It's DDL is maintained in the database. Just name is changed by Oracle. You can read the link which I have shared to get more idea about it – Popeye Aug 05 '19 at 16:09