Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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;
        }