Oracle数据库编程经典300例
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

实例015 引用并输出数据表中的列

【实例描述】

除实例014中介绍的%ROWTYPE外,Oracle PL/SQL还支持一个属性数据类型,即%TYPE类型,该类型引用数据库的列类型作为某变量的数据类型。本实例声明一个%TYPE类型变量,并通过该变量引用并输出数据表中的字段值。

本实例从数据表STUDENT中获取学号为“120003”的学生信息,将其年龄加上1 后在SQL*Plus控制端中输出,其中数据表STUDENT的初始数据如图1-28所示,本实例的执行结果如图1-36所示。

图1-36 引用并输出数据表中的列

【实现代码】

    SQL> DECLARE
      2  age STUDENT.sage%TYPE;
      3  newage number;
      4  BEGIN
      5  SELECT sage INTO age FROM STUDENT WHERE sno='120003';
      6  newage:=age+1;
      7  DBMS_OUTPUT.PUT_LINE (newage);
      8  END;
      9  /

【范例解析】

本实例使用了%TYPE数据类型声明变量age为数据表STUDENT中sage列(字段)的变量,再通过SELECT查询语句从数据表STUDENT获取一个列值,并将其写入到%TYPE型变量age中。在上面代码的第6行中引用该变量age进行一个简单的算术运算,最后将运算结果输出。

注意:%TYPE可以引用表中的某列作为类型变量的数据类型,也可以引用某变量的类型作为新变量的数据类型。