public List <ITriggerClass> GetTriggers() { if (_triggers.Count == 0 && !_isLoadTris) { StringBuilder sb = new StringBuilder(); sb.Append(" create or replace function user_tris_long_2_varchar(p_trigger_name in user_triggers.trigger_name%type)"); sb.Append(" return varchar2 as"); sb.Append(" l_trigger_body LONG;"); sb.Append(" begin"); sb.Append(" select trigger_body"); sb.Append(" into l_trigger_body"); sb.Append(" from user_triggers"); sb.Append(" where trigger_name = p_trigger_name;"); sb.Append(" return substr(l_trigger_body, 1, 40000);"); sb.Append(" end;"); _oracleHelper.ExecuteSql(sb.ToString()); DataTable dt = _oracleHelper.ExecuteDataTable("select t1.trigger_name,t1.trigger_type,t1.triggering_event,t1.table_owner,t1.base_object_type,t1.table_name,t1.column_name,t1.referencing_names,t1.when_clause,t1.status,t1.description,t1.action_type,user_tris_long_2_varchar(t1.trigger_name) as trigger_body from user_triggers t1,user_tables t2 where t1.table_name=t2.table_name"); _oracleHelper.ExecuteSql("drop function user_tris_long_2_varchar"); foreach (DataRow item in dt.Rows) { OracleTriggerClass otc = new OracleTriggerClass(item); _triggers.Add(otc); } _isLoadTris = true; } List <ITriggerClass> t = new List <ITriggerClass>(); t.AddRange(_triggers); return(t); }
public List<ITriggerClass> GetTriggers() { if (_triggers.Count == 0 && !_isLoadTris) { StringBuilder sb = new StringBuilder(); sb.Append(" create or replace function user_tris_long_2_varchar(p_trigger_name in user_triggers.trigger_name%type)"); sb.Append(" return varchar2 as"); sb.Append(" l_trigger_body LONG;"); sb.Append(" begin"); sb.Append(" select trigger_body"); sb.Append(" into l_trigger_body"); sb.Append(" from user_triggers"); sb.Append(" where trigger_name = p_trigger_name;"); sb.Append(" return substr(l_trigger_body, 1, 40000);"); sb.Append(" end;"); _oracleHelper.ExecuteSql(sb.ToString()); DataTable dt = _oracleHelper.ExecuteDataTable("select t1.trigger_name,t1.trigger_type,t1.triggering_event,t1.table_owner,t1.base_object_type,t1.table_name,t1.column_name,t1.referencing_names,t1.when_clause,t1.status,t1.description,t1.action_type,user_tris_long_2_varchar(t1.trigger_name) as trigger_body from user_triggers t1,user_tables t2 where t1.table_name=t2.table_name"); _oracleHelper.ExecuteSql("drop function user_tris_long_2_varchar"); foreach (DataRow item in dt.Rows) { OracleTriggerClass otc = new OracleTriggerClass(item); _triggers.Add(otc); } _isLoadTris = true; } List<ITriggerClass> t = new List<ITriggerClass>(); t.AddRange(_triggers); return t; }