日期:2014-05-16  浏览次数:20528 次

使用%TYPE和%ROWTYPE类型的变量

使用%TYPE和%ROWTYPE类型的变量

??????在定义变量时处理可以使用oracle规定的数据类型外,还可以使用%TYPE和%ROWTYPE来定义变量.

?????%TYPE类型的变量是专门为存储在数据列中检索到的值而创建的.对于使用%TYPE创建的变量,其数据类型由系统根据检索的数据列的数据类型决定.

?????%ROWTYPE类型的变量,它可以一次存储从数据库检索的一行数据。

一、当你不知道表中的数据类型是什么时候?那你就考虑%TYPE来解决此问题。

当使用%TYPE定义变量时,其数据类型为指定的列的数据类型。

举例:

SQL>?declare

??2?????empno?emp.empno%TYPE;?//声明的时候一定要加上表的中列

??3?????ename?emp.ename%TYPE;

??4?????job???emp.job%TYPE;

??5??begin

??6?????select?empno,ename,job?into?empno,ename,job?from?emp?where?empno='7369';

??7?????dbms_output.put_line(empno||'/'||ename||'/'||job);

??8??end;