java_my_love 2011-10-14 11:13
浏览 1417
已采纳

存储过程for in loop 问题

create or replace procedure GET_DATA is
yesterday varchar2(2);
tablename varchar2(20);
date varchar(20);
begin
select to_char(sysdate - 1, 'dd') into yesterday from dual;

tablename := '"d_his_fre_data_' || yesterday || '"';

dbms_output.put_line(tablename);

for rec in(select * from [color=red]tablename[/color]) loop
-- insert into aaa values(rec.UID);
date := substr(rec.COLL_TIME,0,9);
-- dbms_output.put_line(substr(rec.COLL_TIME,0,9) || ' ' substr(rec.COLL_TIME,10,17,));
dbms_output.put_line(date);
end loop;
commit;
end GET_DATA;

for in loop中的table 貌似不能为变量啊
请教各位大仙如何解决,分比较少,见谅

  • 写回答

4条回答 默认 最新

  • iteye_8576 2011-10-14 15:55
    关注

    看你代码中:
    tablename := '"d_his_fre_data_' || yesterday || '"';

    你的表都是d_his_fre_data_开头的,以天结尾,你这些表的结构都是一样的吧,如果是一样的,随便定义一个表就行,比如 rec d_his_fre_data_01%ROWTYPE;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 汇编语言除法溢出问题
  • ¥65 C++实现删除N个数据列表共有的元素
  • ¥15 Visual Studio问题
  • ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗