开花流水

空山无人,水流花开。

BlogJava 首页 新随笔 联系 聚合 管理
  79 Posts :: 42 Stories :: 160 Comments :: 0 Trackbacks
1、匿名块的格式基本就如下面所示
[declare]
/*变量定义区,也可做初使化等*/
begin
/*开始区,执行顺序SQL语句*/
[exception]
/*异常处理区,可进行异常处理,异常的抛出使用raise关键字*/
end;
其中方框里面的为可选项,不作为必须。
2、fetch
1)首先要定义cursor,如cursor id_cur is select id from components
2)然后打开cursor:open id_cur
3)第三是使用fetchcursor并保存到变理中
4)第四关闭cursor
那就把上面说到的功能实现,代码如下:
Sql代码
  1. declare  
  2.        num_id integer;/*定义变量*/  
  3.        sql_str varchar(1000);  
  4.        cursor id_cur is select id from components;/*用光标取ID*/  
  5. begin  
  6.        open id_cur;/*打开光标执行*/  
  7.        loop/*一直执行下去*/  
  8.             fetch id_cur into num_id;/*根据光标,取出ID号到变量中*/  
  9.             exit when id_cur%notfound;/*没有记录时就退出*/  
  10.             if mod(num_id,5)=0 then/*如果记录ID为5的倍数,就执行下面的插入*/  
  11.                /*下面生成一条SQL语句*/  
  12.                sql_str:='insert into components2 select * from components where id='|| num_id;  
  13.                /*立即执行生成的SQL语句*/  
  14.                execute immediate sql_str;  
  15.             end if;/*记住:条件的结束后都要加结束束‘;’*/  
  16.        end loop;  
  17.        close id_cur;/*关闭光标*/  
  18. end;  
  19. /  
posted on 2009-07-18 10:09 开花流水 阅读(924) 评论(0)  编辑  收藏 所属分类: java技术

只有注册用户登录后才能发表评论。


网站导航: