码迷,mamicode.com
首页 > 数据库 > 详细

PLSQL的两个属性类型%type 和%rowtype

时间:2018-08-04 12:02:16      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:方式   data-   highlight   font   类型   col   lin   个数   特性   

1.%TYPE

定义一个变量,其数据类型与已经定义的某个数据变量的类型相同,或者与数据库表的某个列的数据类型相同,这时可以使用%TYPE。 
说白了就是将查询到的某个列的结果要赋给 一个变量这会就用到了 %TYPE。

---查询员工号为7369的补助
declare
empcom emp.comm%type ;  --声明一个empcom变量,数据类型类型为emp表的comm列类型
begin
   select comm into empcom from emp where empno=7369 ;---将查到的comm类型的结果值放到 empcom变量里 
   dbms_output.put_line(‘员工补助是‘||empcom) ;--- ||是连接字符
end ;

declare 声明部分定义了一个empcom 变量它的类型是 emp的comm属性,意味着 后边的程序将列值取出赋值给empcom 变量。 
select comm into empcom from emp where empno=7369 ; 
select … into… 表示将 查询结果 赋给 empcom 。

2.%rowtype

PL/SQL 提供%ROWTYPE操作符, 返回一个记录类型, 其数据类型和数据库表的数据结构相一致。 

使用方式:变量名.列名
使用%ROWTYPE特性的优点在于: 
所引用的数据库中列的个数和数据类型可以不必知道; 
所引用的数据库中列的个数和数据类型可以实时改变。 
取出一个列的记录可以存到使用rowtype 定义的变量里。

---查询king员工的所有信息。 %rowtype 使用
declare
empmsg emp%rowtype ; -- 定义一个empmsg变量 存一行的数据
begin
  select * into empmsg from emp where ename =‘KING‘ ;
 dbms_output.put_line(empmsg.ename||‘:‘||empmsg.sal) ; ---输出
end ; 

  

 

PLSQL的两个属性类型%type 和%rowtype

标签:方式   data-   highlight   font   类型   col   lin   个数   特性   

原文地址:https://www.cnblogs.com/jmuccx/p/9417269.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!