龙空技术网

Oracle数据库扩展语言PL/SQL之常量与变量

数据仓库 211

前言:

今天咱们对“oracle存储过程中变量”大致比较着重,兄弟们都需要了解一些“oracle存储过程中变量”的相关内容。那么小编在网络上网罗了一些有关“oracle存储过程中变量””的相关资讯,希望小伙伴们能喜欢,咱们快快来了解一下吧!

1 基本概念1.1 PL/SQL 变量

变量存放在内存中以获得值,能被 PL/SQL 块引用。你可以把变量想象成一个可储藏东西的容器,容器内的东西是可以改变的。

变量一般都在 PL/SQL 块的声明部分声明, PL/SQL 是一种强壮的类型语言,这就是说在引用变量前必须首先声明,要在执行或异常处理部分使用变量,那么变量必须首先在声明部分进行声明。

声明变量的语法如下:

Variable_name [CONSTANT] databyte [NOT NULL][:=|DEFAULT expression]

给变量赋值有两种方式:

1、 直接给变量赋值

X:=200;Y=Y+(X*20);

2、 通过 SQL SELECT INTO 或 FETCH INTO 给变量赋值

SELECT SUM(SALARY),SUM(SALARY*0.1)INTO TOTAL_SALARY,TATAL_COMMISSIONFROM EMPLOYEEWHERE DEPT=10;
1.2 PL/SQL 常量

常量与变量相似,但常量的值在程序内部不能改变,常量的值在定义时赋予,他的声明方式与变量相似,但必须包括关键字 CONSTANT 。常量和变量都可被定义为 SQL 和用户定义的数据类型。

如: ZERO_VALUE CONSTANT NUMBER:=0; 这个语句定了一个名叫 ZERO_VALUE 、数据类型是 NUMBER 、值为 0 的常量

2 代码实例

常量使用 CONSTANT 关键字声明。它需要一个初始值,并且不允许被改变该值。

PI CONSTANT NUMBER := 3.141592654;DECLARE-- constant declarationpi constant number := 3.141592654;-- other declarationsradius number(5,2);dia number(5,2);circumference number(7, 2);area number (10, 2);BEGIN-- processingradius := 9.5;dia := radius * 2;circumference := 2.0 * pi * radius;area := pi * radius * radius;-- outputdbms_output.put_line('Radius: ' || radius);dbms_output.put_line('Diameter: ' || dia);dbms_output.put_line('Circumference: ' || circumference);dbms_output.put_line('Area: ' || area);

标签: #oracle存储过程中变量