龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

在Oracle树结构中实现存储过程

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
此文章主要是对 Oracle 树结构中的实现存储过程的具体操作步骤,其中包括对创建表 IT的实际操作步骤,以及如何向相关的数据中插入数据并提交相关事务与创建存储过程p的相关内容的

此文章主要是对Oracle树结构中的实现存储过程的具体操作步骤,其中包括对创建表 IT的实际操作步骤,以及如何向相关的数据中插入数据并提交相关事务与创建存储过程p的相关内容的介绍。

第一步:创建表 IT

  1. create table IT  
  2. (  
  3. id number primary key ,  
  4. cont varchar2(255),  
  5. pid number,  
  6. isleaf number(1),   

0代表非叶子节点 1代表叶子节点。

  1. grade number(2)  
  2. );  

第二步:向数据中插入数据并提交事务

insert into IT values (1, '大家好', 0, 0, 0);

insert into IT values (2, '你也好', 1, 0, 1);

insert into IT values (3, '愿大家学业有成', 2, 1, 2);

commit; --提交事务

  1. select * from it 

实现Oracle树结构的存储过程的第三步:创建存储过程p

  1. create or replace procedure p (v_pid IT.pid%type, v_level binary_integer)  
  2. is  
  3. cursor c is select * from IT where pid = v_pid;  
  4. v_preStr varchar2(1024) :'';  
  5. begin  
  6. for i in 1..v_level  
  7. loop  
  8. v_preStr :v_preStr || '**$';  
  9. end loop;  
  10. for v_IT in c  
  11. loop  
  12. dbms_output.put_line(v_preStr || v_IT.cont);  
  13. if(v_IT.isleaf = 0) then  
  14. p(v_IT.id, v_level + 1);  
  15. end if;  
  16. end loop;  
  17. end;  

第四步:启动serveroutput 利用exec命令实现树形展示 在pl/sql中的

Command Window下运行

  1. SQL> set serveroutput on  
  2. SQL> exec p(0,0);  

运行结果,上述的相关内容就是对Oracle树结构存储过程的描述,希望会给你带来一些帮助在此方面。

精彩图集

赞助商链接