Drop all trigger in Oracle database

Hi, anyone can provide met he script to drop all trigger in oracle database ? TQ
LVL 5
netcoolAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Guy Hengel [angelIII / a3]Connect With a Mentor Billing EngineerCommented:
run this query to generate the script for dropping all triggers for a given schema
select 'drop trigger ' || t.owner || '.' || t.trigger_name || ';' from dba_triggers where t.owner = 'schema_name';
0
 
schwertnerCommented:
use the view  dba_triggers.
it is bad idea to drop ALL triggers.
Try to drop the triggers in an schema.

the idea is to define a cursor

select owner, triggername from dba_triggers where owner = 'SCOTT';

After that in a loop create a string

v_str := 'DROP TRIGGER ' || cursor_name.owner || '.' || cursor_name.triggername
execute immediate v_str;

I think you will learn many things if you try to do this.
But be carefull, do it on experimental instance, not on production.
0
 
haidersyedCommented:

--To drop all triggers other then sys and system schema

begin
for i in (select trigger_name,owner from dba_triggers where owner not in ('SYS','SYSTEM')) LOOP
execute immediate 'DROP TRIGGER '||i.owner||'.'||i.trigger_name;
END LOOP;
END;
0
 
JJSmithCommented:


mmmmnnnnn..........

should someone who does not know how to identify/drop triggers in a database;  be dropping all triggers in a database?

normal schemas' can own system triggers!!





0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.