ORACLE之%TYPE

%TYPE属性
在PL/SQL中可以将变量和常量声明为内建或用户定义的数据类型,以引用一个列名,同时继承他的数据类型和大小。这种动态赋值方法是非常有用的,比如变量引用的列的数据类型和大小改变了,如果使用了%TYPE,那么用户就不必修改代码,否则就必须修改代码。

例:
v_empno    SCOTT.EMP.EMPNO%TYPE;
v_salary    EMP.SALARY%TYPE;

不但列名可以使用%TYPE,而且变量、游标、记录,或声明的常量都可以使用%TYPE。这对于定义相同数据类型的变量非常有用。 

DELCARE
V_A    NUMBER(5):=10;
V_B    V_A%TYPE:=15;
V_C    V_A%TYPE;

BEGIN

DBMS_OUTPUT.PUT_LINE
('V_A='||V_A||'V_B='||V_B||'V_C='||V_C);

END 

SQL>/ 

V_A=10    V_B=15    V_C=
PL/SQL    procedure    successfully    completed.

成功不是得到多少东西,而是把身上多余的东西的扔掉多少。
原文地址:https://www.cnblogs.com/Ferdinand/p/2732997.html