PL/SQL - 常量和文字
在本章中,我们将讨论 PL/SQL 中的 constants 和 literals。 常量保存一个值,一旦声明,在程序中就不会改变。 常量声明指定其名称、数据类型和值,并为其分配存储空间。 该声明还可以施加 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、'tutorialspoint' 都是布尔、数字或字符串类型的文字。 PL/SQL,文字区分大小写。 PL/SQL 支持以下几种文字 −
- 数字文字
- 字符文字
- 字符串文字
- 布尔文字
- 日期和时间文字
下表提供了所有这些文字值类别的示例。
| S.No | 文字类型示例 |
|---|---|
| 1 | 数字文字 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 |
| 2 | 字符文字 'A' '%' '9' ' ' 'z' '(' |
| 3 | 字符串文字 'Hello, world!' 'Tutorials Point' '19-NOV-12' |
| 4 | 布尔文字 TRUE, FALSE, and NULL. |
| 5 | 日期和时间文字 DATE '1978-12-25'; TIMESTAMP '2012-10-29 12:01:01'; |
要在字符串文字中嵌入单引号,请将两个单引号并排放置,如以下程序所示 −
DECLARE message varchar2(30):= 'That''s tutorialspoint.com!'; BEGIN dbms_output.put_line(message); END; /
在 SQL 提示符下执行上述代码时,会产生以下结果 −
That's tutorialspoint.com! PL/SQL procedure successfully completed.

