记录与集合

记录类型最初从Oracle7中被引入,这种类型有些类似于C语言或PASCAL语言中的结构。
DECLARE
--定义记录类型
TYPE t_emp IS RECORD (
    v_empno        NUMBER,
    v_ename        VARCHAR2(20),
    v_job        VARCHAR2(9),
    v_mgr        NUMBER(4),
    v_hiredate    DATE,
    v_sal        NUMBER(7,2),
    v_comm        NUMBER(7,2),
    v_deptno    NUMBER(2)
);
--声明记录类型的变量
emp_info       t_emp;
BEGIN
--从emp表中取出字段值赋给记录类型
SELECT *
  INTO emp_info
  FROM emp
 WHERE empno = :empno;
 --向emp_copy表中插入记录类型的值
 INSERT INTO emp_copy
       VALUES emp_info;

EXCEPTION
    WHEN OTHERS
    THEN
        NULL;

END;

由于记录是一种自定义的复合类型,因此在语句块的声明区,首先声明了一个记录类型t_emp,
然后声明了t_emp类型的变量emp_info.在SELECT语句中,直接操纵记录类型的变量对记录进行赋值,
然后INSERT语句也将记录类型的变量当作一个单元,直接进行槽中,可以看到整个代码变得清晰易
理解,也容易维护了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值