Oracle %ROWTYPE

来源:互联网 发布:电脑离线看书软件 编辑:程序博客网 时间:2024/05/16 08:22

http://advance0683.iteye.com/blog/1055226


%ROWTYPE:表示该类型为行数据类型,存储的时候为一行数据,一行有很多列,相当于表中的一行数据,也可以的游标中的一行数据。

 

   用到%ROWTYPE作用是:当查询整行的时候(SELECT * FROM EMP;),那么效率比每一个字段对应快。

 

    例如: v_info emp%ROWTYPE; //该类型为emp表中的一行数据类型

               v_cinfo c_emp%ROWTYPE //该类型为游标c_emp中的一行数据类型

 

下面是一个例子:

 

Oracle代码  收藏代码
  1. declare  
  2. r_emp emp%ROWTYPE;   --该类型为emp表中一行的类型  
  3. cursor c_emp is SELECT * FROM emp ;  
  4. BEGIN  
  5.   OPEN c_emp;  
  6.   LOOP  
  7.     FETCH c_emp into r_emp;     --游标中查询出来的一行into进定义的变量r_emp中  
  8.     EXIT WHEN c_emp%NOTFOUND;  
  9.     dbms_output.put_line('员工姓名:' || r_emp.ename);     
  10.   END LOOP;  
  11.   CLOSE c_emp;  
  12. END;