ORACLE中RECORD的使用

一、概念:

–定义记录数据类型。将几个相关的、分离的、基本数据类型的变量组成一个整体的方法,即RECORD复合数据类型。

–在使用记录数据类型变量时,需要在声明部分先定义记录的组成、记录的变量,然后在执行部分引用该记录变量本身或其中的成员。

二、语法:

TYPE RECORD_NAME IS RECORD(

V1  DATA_TYPE1 [NOT NULL][:=DEFAULT_VALUE],

V2  DATA_TYPE2 [NOT NULL][:=DEFAULT_VALUE],

VN  DATA_TYPEN [NOT NULL][:=DEFAULT_VALUE]);

三、使用实例

1.先定义一个只与SF_ORG表中某几个列的数据类型相同的记录数据类型TYPE_ORG_RECORD,

2.然后声明一个该数据类型的记录变量V_ORG_RECORD,最后用替换变量&ORG_ID接受输入的雇员编码,查询并显示该雇员的这几列中的信息。

3.注意,在使用RECORD数据类型的变量时要用“.”运算符指定记录变量名限定词。

4 . 一个记录类型的变量只能保存从数据库中查询出的一行记录,如果查询出了多行记录,就会出现错误。

    DECLARE   
      TYPE TYPE_ORG_RECORD IS RECORD(  
      V_ORG_NAME SF_ORG.ORG_NAME%TYPE,  
      V_PARENT_ID SF_ORG.PARENT_ID%TYPE);  
      V_ORG_RECORD TYPE_ORG_RECORD;  
    BEGIN  
      SELECT ORG_NAME,PARENT_ID INTO V_ORG_RECORD  
      FROM SF_ORG SO  
      WHERE SO.ORG_ID=&ORG_ID;  
      DBMS_OUTPUT.PUT_LINE('部门名称:' || V_ORG_RECORD.V_ORG_NAME);  
      DBMS_OUTPUT.PUT_LINE('上级部门编码:' || TO_CHAR(V_ORG_RECORD.V_PARENT_ID));  
    END;  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值