PL/SQL常量和文字
常量一旦声明值,在程序中不会改变。常量声明指定名称,数据类型和值,并为它分配存储空间。声明还可以加以NOT NULL约束。
声明一个常量
常量使用CONSTANT关键字声明。它需要一个初始值,并且不允许被改变该值。例如:
PI CONSTANT NUMBER := 3.141592654;
DECLARE -- constant declaration pi constant number := 3.141592654; -- other declarations radius number(5,2); dia number(5,2); circumference number(7, 2); area number (10, 2); BEGIN -- processing radius := 9.5; dia := radius * 2; circumference := 2.0 * pi * radius; area := pi * radius * radius; -- output dbms_output.put_line('Radius: ' || radius); dbms_output.put_line('Diameter: ' || dia); dbms_output.put_line('Circumference: ' || circumference); dbms_output.put_line('Area: ' || area); END; /
当上述代码在SQL提示符执行时,它产生了以下结果:
Radius: 9.5 Diameter: 19 Circumference: 59.69 Area: 283.53 Pl/SQL procedure successfully completed.
PL/SQL文字
文字是一个明确的数字,字符,字符串或布尔值不是由标识符表示。例如,TRUE,786,NULL'yiibai' 的类型分别是布尔,数字或字符串的文字。 PL/SQL的文字是区分大小写的。 PL/SQL支持以下几种文字:
-
数字文本
-
字符字面量
-
字符串字面量
-
布尔文字
-
日期和时间文字
下表提供了这些类型文字值的例子。
字面值类型 | 示例: |
---|---|
数字文本 |
050 78 -14 0 +32767 6.6667 0.0 -12.0 3.14159 +7800.00 6E5 1.0E-8 3.14159e0 -1E38 -9.5e-3 |
字符字面量 | 'A' '%' '9' ' ' 'z' '(' |
字符串字面量 |
'Hello, world!' 'Yiibai Yiibai' '19-NOV-12' |
布尔文字 | TRUE, FALSE 以及 NULL. |
日期和时间文字 |
DATE '1978-12-25'; TIMESTAMP '2012-10-29 12:01:01'; |
嵌入单引号字符串文本中,将两个单引号相邻,如下图所示:
DECLARE message varchar2(30):= ''That''s yiibai.com!''; BEGIN dbms_output.put_line(message); END; /
当上述代码在SQL提示符执行时,它产生了以下结果:
That's gitbook.net! PL/SQL procedure successfully completed.