玖叶教程网

前端编程开发入门

了解 PL/SQL 数据类型的标量数据类型和属性数据类型

3.PL/SQL 数据类型

前面在建表时,学习过 oracle SQL 的数据类型,PL/SQL 不但支持这些数据类型,还具备自身的数据类型。PL/SQL 的数据类型包括标量数据类型,引用数据类型和存储文本、图像、视频、声音等非结构化的大数据类型(LOB 数据类型) 等。下面列举一些常用的类型。

标量数据类型

标量数据类型的变量只有一个值,且内部没有分量。标量数据类型包括数字型,字符型,日期型和布尔型。这些类型有的是 oracle SQL 中定义的数据类型,有的是叫PL/SQL 自身附加的数据类型。字符型和数字型又有子类型,子类型只与限定的范围有关,比如NUMBER 类型可以表示整数,也可以表示小数,而其子类型 POSITIVE 只表示正整数。

学IT拿高薪,我选择兆隆IT云学院,0学费,0基础,课程全,保就业,等你来!

属性数据类型

当声明一个变量的值是数据库中的一行或者是数据库中某列时,可以直接使用属性类型来声明。oracle 中存在两种属性类型:%TYPE 和%ROWTYPE。

> %ROWTYPE

引用数据库表中的一行作为数据类型,即RECORD 类型 (记录类型),是 PL/SQL附加的数据类型。表示一条记录,就相当于Java 中的一个对象。可以使用 “.”来访问记录中的属性。

代码演示:%ROWWPE 应用

SQL> DECLARE

2 myemp EMP%ROWTYPE; ①

3 BEGIN

4 SELECT * INTO myemp FROM emp WHERE empno=7934; ②

5 dbms_output.put_line(myemp.ename); ③

6 END;

7 /

MILLER

PL/SQL procedure successfully completed

代码解析:

① 声明一个myemp 对象,该对象表示EMP 表中的一行。

② 从EMP 表中查询一条记录放入myemp 对象中。

③ 访问该对象的属性可以使用“。”

> %TYPE

引用某个变量或者数据库的列的类型作为某变量的数据类型。

代码演示:%TYPE应用

SQL> DECLARE

2 sal emp.sal%TYPE; ①

3 mysal number(4):=3000;

4 totalsalmysal%TYPE; ②

5 BEGIN

6 SELECT SAL INTO sal FROM emp WHERE empno=7934;

7 totalsal: =sal+mysal;

8 dbms_output.put_line(totalsal);

9 END;

10 /

4300

PL/SQL procedure successfully completed

代码解析:

① 定义变量sal为emp 表中sal 列的类型。

② 定义totalsal是变量mysal 的类型。

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

你离成功只差一次正确的选择,高薪才是王道!分享来自兆隆IT云学院,QQ:598756835

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言