2012年5月21日星期一

exp_procedure

create or replace procedure exp_clt_perf_p_mod_out(p_start_time in date,
                                                   p_end_time   in date) is
  v_int_sql    varchar2(3000);
  v_table_name varchar2(100);
  v_tab_name   varchar2(100);
  --v_sel_sql varchar2(3000) ;
begin
  for i in (select distinct table_name
              from user_tab_columns
             where column_name in ('STAMPTIME')
               AND TABLE_NAME LIKE 'CLT%') loop
 
    v_table_name := i.table_name;
    for k in (select 'exp wcdma/uwaysoft2010@db122 file = ' || v_table_name ||
                     '.dmp tables = ' || v_table_name ||
                     ' query = \"where STAMPTIME  between to_date('''||p_start_time||''',''YYYY-MM-DD HH24:MI:SS'') '||
                     ' and to_date('''||p_end_time||''',''YYYY-MM-DD HH24:MI:SS'')  \"'  exp_select_clt
                from dual) loop
     /* v_int_sql := 'insert into wt_exp_sel(exp_text,table_name) values('''||k.exp_select_clt||''','''||v_table_name||''')';
      execute immediate v_int_sql
              USING p_start_time , p_end_time ;
      commit ;*/
      insert into wt_exp_sel(exp_text,table_name) values( k.exp_select_clt, v_table_name ) ;
      commit;
    end loop;
  end loop;
  -----
  -----
  for f in (select distinct table_name
              from user_tab_columns
             where column_name in ('START_TIME')
               AND (TABLE_NAME LIKE 'PERF%'
               or TABLE_NAME LIKE 'P_%'
               or TABLE_NAME LIKE 'MOD_%')) loop
 
    v_tab_name := f.table_name;
    for m in (select 'exp wcdma/uwaysoft2010@db122 file = ' || v_tab_name ||
                     '.dmp tables = ' || v_tab_name ||
                     ' query = \"where START_TIME between to_date('''||p_start_time||''',''YYYY-MM-DD HH24:MI:SS'') '||
                     ' and ' || 'to_date('''||p_end_time||''',''YYYY-MM-DD HH24:MI:SS'')   \" ' exp_select_more
                from dual) loop
      insert into wt_exp_sel(exp_text,table_name) values( m.exp_select_more, v_tab_name ) ;
      commit;
    end loop;
  end loop;
end exp_clt_perf_p_mod_out;
----------------------------------
----------------------------------
1    exp wcdma/uwaysoft2010@db122 file = CLT_CM_W_AL_ALWAYSONTIMER.dmp tables = CLT_CM_W_AL_ALWAYSONTIMER query = \"where STAMPTIME  between to_date('2012-05-01 00:00:00','YYYY-MM-DD HH24:MI:SS')  and to_date('2012-05-16 00:00:00','YYYY-MM-DD HH24:MI:SS')  \"    CLT_CM_W_AL_ALWAYSONTIMER
2    exp wcdma/uwaysoft2010@db122 file = CLT_CM_W_AL_AOONDCHPARAM.dmp tables = CLT_CM_W_AL_AOONDCHPARAM query = \"where STAMPTIME  between to_date('2012-05-01 00:00:00','YYYY-MM-DD HH24:MI:SS')  and to_date('2012-05-16 00:00:00','YYYY-MM-DD HH24:MI:SS')  \"    CLT_CM_W_AL_AOONDCHPARAM

没有评论:

发表评论