PL/SQL类的应用

类的定义

直接声明字段类型‘VARCHAR2或NUMBER等’

declare

type kingsql_tp1 is record(empno number,ename varchar2(100));

var_A kingsql_tp1;

begin

select empno,ename into var_A from emp where empno=7900;

dbms_output.put_line(var_A.empno||'''s name is'||var_A.ename);

end;

/

7900's name isJAMES

PL/SQL procedure successfully completed.

Record类代表一行记录 不能输出多行

用表的字段类型‘表名。字段名%TYPE’

declare

type kingsql_tp1 is record(empno emp.empno%type,ename emp.ename%type);

var_A kingsql_tp1;

begin

select empno,ename into var_A from emp where empno=7900;

dbms_output.put_line(var_A.empno||'''s name is'||var_A.ename);

end;

/

将表的全字段类型直接赋予变量 ‘表名%ROWTYPE’

declare

var_A emp%rowtype;

begin

select * into var_A from emp;

dbms_output.put_line(var_A.empno||'''s name is '||var_A.ename);

dbms_output.put_line(var_A.ename||'''s salary is '||var_A.sal);

end;

猜你喜欢

转载自www.cnblogs.com/kawashibara/p/8995524.html