oracle 存储过程

存储过程调试

oracle 查询所有和主表有关系的子表

select * from user_constraints where 
R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'T_IESUPDATE_DETAILTBLE') ;

 游标---遍历

declare
       --类型定义
       cursor c_job
       is
       select empno,ename,job,sal
       from emp
       where job='MANAGER';
       --定义一个游标变量v_cinfo c_emp%ROWTYPE ,该类型为游标c_emp中的一行数据类型
       c_row c_job%rowtype;
begin
       for c_row in c_job loop
         dbms_output.put_line(c_row.empno||'-'||c_row.ename||'-'||c_row.job||'-'||c_row.sal);
       end loop;
end;
declare 
       --类型定义
       cursor c_job
       is
       select empno,ename,job,sal
       from emp
       where job='MANAGER';
       --定义一个游标变量
       c_row c_job%rowtype;
begin
       open c_job;
         loop
           --提取一行数据到c_row
           fetch c_job into c_row;
           --判读是否提取到值,没取到值就退出
           --取到值c_job%notfound 是false 
           --取不到值c_job%notfound 是true
           exit when c_job%notfound;
            dbms_output.put_line(c_row.empno||'-'||c_row.ename||'-'||c_row.job||'-'||c_row.sal);
         end loop;
       --关闭游标
      close c_job;
end;

  使用记录变量

declare
type stutype is record(
stuno int
stuname chaar(100))

使用%rowtype 参照某表的记录类型

 

 

使用表变量

定义一个变量,像数组一样包含多个类型相同的简单变量

 

type stutype is table of table.name%type
[not null] index by binay_integer

st stutype
begin
st(0):="董行" 

end 

 

posted @ 2016-11-30 15:14  飞猪.net  阅读(138)  评论(0编辑  收藏  举报