7.2 PL/SQL变量的使用
所有的编程语言中变量是使用最频繁的。PL/SQL作为一个面向过程的数据库编程语言同样少不了变量,利用变量可以把PL/SQL块需要的参数传递进来,做到动态执行程序,同时也可以利用变量在PL/SQL内部进行值的相互传递,甚至可以把值传递出去,最终返回给用户。由此可见,变量是PL/SQL不可缺少的一部分。
7.2.1 变量、常量的类型及语法
变量就是它所表示的值是可以变化的,而常量就是当初始化后,其值不可以再改变。PL/SQL是一种强类型的语言,所以当使用变量或常量的时候必须声明,否则提示错误。下面是变量和常量声明的语法介绍。
1.变量声明语法结构
01 variable_name datatype
02 [
03 [NOT NULL]
04 {:=|DEFAULT}expression
05 ];
【语法说明】
❑variable_name:表示变量的名称。名称可以根据读者实际情况自行定义。
❑datatype:变量的数据类型。
❑第2~5行表示可选部分。如果没有这部分,那么只需要变量的名称以及对应的数据类型即可,声明的时候变量可以不赋值。
❑NOT NULL:表示非空约束。
❑{:=|DEFAULT}:当使用NOT NULL属性时,大括号里的内容为必需,表示二选一;“:=”表示赋值;DEFAULT表示默认值。
❑expression:表示变量存储的值,该项可以是表达式。
2.常量声明的具体语法结构
01 constant_name CONSTANT datatype
02 [NOT NULL]
03 {:=|DEFAULT}expression;
【语法说明】
❑constant_name:表示声明的常量名称。
❑CONSTANT:如果表示常量,该项必须有,否则表示变量。
❑datatype:常量的数据类型。
❑NOT NULL:表示常量值非空。
❑{:=|DEFAULT}:表示常量必须显式地为其赋值,方式同变量一样。
❑expression:值或表达式。
变量和常量的语法结构相似,其中expression表示的含义完全一样,都可以是如下类型的表达式:
❑字符型表达式;
❑数值型表达式;
❑日期型表达式;
❑布尔型表达式;
❑直接的一个值。
变量和常量的数据类型可以概括性地分为如下三种类型:
❑标量类型变量:单一类型,不存在组合。
❑复合类型变量:由几种单一类型组合而成的一个结构体。
❑引用类型变量:使用一个其他数据项的引用。
在这三种类型中日常开发最常用的就是前两种,下面会详细介绍这两种类型。