i := 1;
loop
exit when i > 10;
vv_sql := 'insert into /*+ append */
lbimk_airtel.tb_mk_w_datakpi_day(
statis_date,
ccr_time ,
total
)
select /*+ parallel(t,4) */
t.statis_date,
substr(t.ccr_time'||i||',1,12),
count(1)
from lbidw_airtel.tb_dw_w_datakpi_his_day t
where t.statis_date =' ||iv_date||'
group by t.statis_date,
substr(t.ccr_time'||i||',1,12)';
i := i+1;
dbms_output.put_line(vv_sql);
execute immediate vv_sql;
commit;
end loop;这是存储过程报错的地方,单步调试在vv_sql处,就抛异常。应该没撒错误啊。
loop
exit when i > 10;
vv_sql := 'insert into /*+ append */
lbimk_airtel.tb_mk_w_datakpi_day(
statis_date,
ccr_time ,
total
)
select /*+ parallel(t,4) */
t.statis_date,
substr(t.ccr_time'||i||',1,12),
count(1)
from lbidw_airtel.tb_dw_w_datakpi_his_day t
where t.statis_date =' ||iv_date||'
group by t.statis_date,
substr(t.ccr_time'||i||',1,12)';
i := i+1;
dbms_output.put_line(vv_sql);
execute immediate vv_sql;
commit;
end loop;这是存储过程报错的地方,单步调试在vv_sql处,就抛异常。应该没撒错误啊。
DECLARE
v_par VARCHAR2(10):='-D';
v_sql VARCHAR(100);
BEGIN
v_sql:='insert into txdsem14 select * from txdsem14 where parmodid='''||v_par||'''';
dbms_output.put_line(v_sql);
EXECUTE IMMEDIATE v_sql;
END;