1.%TYPE
%TYPE简单将其理解成可被复制的属性,什么意思?
A = B%type:B赋值给A,%type附加条件A随B值变化而变化。说得再人性化点就是A复制了B,A随B的值变化而变化。
代码如下:
--查询员工号为7499的补助
declare
empcom emp.comm%type ; --声明一个empcom变量
begin
select comm into empcom from emp where empno = 7499 ;--将查到的comm类型的结果值放到 empcom变量里
dbms_output.put_line('员工补助是' || empcom) ;-- ||连接字符
end;
/
打印结果:
2.%rowtype
%rowtype返回一个记录,其数据类型和数据库表的数据结构相一致。
代码如下:
declare
v_temp dept%rowtype;--声明v_temp表,表结构以及数据类型和dept表一样
begin
v_temp.deptno := 50;
v_temp.dname := 'aaaa';
v_temp.loc := 'bj';
dbms_output.put_line(v_temp.deptno || ' ' || v_temp.dname);
end;
/
打印结果: