Saturday, February 5, 2011

Delete OIM users from database

If you ever needed to physically delete OIM users from the database, you can try the following script.لإhe following script will delete all users except for the three default accounts created during installation.Please note that it was tested on OIM 9.1.0.1. You may need to modify it if OIM is in a different version level:


 delete from oud where oiu_key in (select oiu_key from oiu where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from oiu where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from oio where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from osi where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from osi where req_key in (select req_key from req where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3')));  
 delete from osi where osi_assigned_to_usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from osh where osh_assigned_to_usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from rcd where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rch where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rcu where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rcb where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rcp where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rpc where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rcm where rce_key in (select rce_key from rce,orc,usr where rce.orc_key = orc.orc_key and orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rce where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from rqu where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from oti where orc_key in (select orc_key from orc,usr where orc.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from upd where upp_key in (select upp_key from upp,usr where upp.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from upp where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from usg where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from uhd where uph_key in (select uph_key from uph,usr where uph.usr_key = usr.usr_key and usr_key not in ('1','2','3'));  
 delete from uph where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from pcq where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from rcu where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from UD_MSEXCHG where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_ADUSRC where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_ADUSER where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_HK_EST where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_KLN_EST where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_NT_EST where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UD_OTH_EST where orc_key in (select orc_key from orc where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UPA where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from upa_fields where upa_usr_key in (select upa_usr_key from upa_usr where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UPA_GRP_MEMBERSHIP where upa_usr_key in (select upa_usr_key from upa_usr where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from upa_ud_formfields where upa_ud_forms_key in (select upa_ud_forms_key from upa_ud_forms where upa_resource_key in (select upa_resource_key from upa_resource where upa_usr_key in (select upa_usr_key from upa_usr where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')))));  
 delete from upa_ud_forms where upa_resource_key in (select upa_resource_key from upa_resource where upa_usr_key in (select upa_usr_key from upa_usr where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'))));  
 delete from UPA_RESOURCE where upa_usr_key in (select upa_usr_key from upa_usr where usr_key in (select usr_key from usr where usr_key not in ('1','2','3')));  
 delete from UPA_USR where usr_key in (select usr_key from usr where usr_key not in ('1','2','3'));  
 delete from usr where usr_key not in ('1','2','3');  
 truncate table AUD_JMS;  

No comments:

Post a Comment