扩大
缩小

使用复合数据类型——PL/SQL记录


pl/sql记录类似于高级语言中的结构,它有易于处理单行数据。当使用pl/sql记录时,应用开发人员即可以自定义记录类型和记录变量,也可以使用%rowtype属性直接定义记录变量。


 

自定义pl/sql记录

当使用自定义的pl/sql记录时,需要分别定义pl/sql记录类型和记录变量。

例子:

set verify off
set serveroutput on
declare 
type emp_record_type is record(
      name emp.ename%type,salary emp.sal%type
      );
            emp_record emp_record_type;
begin
select ename,sal into emp_record from emp where empno=&no;
dbms_output.put_line('雇员名:'||emp_record.name);
dbms_output.put_line('雇员工资:'||emp_record.salary);
end;
/

输入eno的值:7788

雇员名:SCOTT

雇员工资:2000


 

使用%rowtype 属性定义记录变量

例子:

declare 
emp_record emp%rowtype;
begin 
select * into emp_record from emp where empno=&no;
dbms_output.put_line('姓名: '||emp_record.ename);
dbms_output.put_line('工资: '||emp_record.sal);
dbms_output.put_line('工作日期: '||emp_record.hiredate);
dbms_output.put_line('岗位: '||emp_record.job);
dbms_output.put_line('补助: '||emp_record.comm);
dbms_output.put_line('部门号: '||emp_record.deptno);
end;
/

 

anonymous block completed
姓名: SCOTT
工资: 2000
工作日期: 01-1月 -92
岗位: ANALYST
补助: 246
部门号: 20


 

posted on 2013-05-01 14:59  LinuxPanda  阅读(641)  评论(0编辑  收藏  举报

导航