PL/SQL - 常量和文字

在本章中,我们将讨论 PL/SQL 中的 constantsliterals。 常量保存一个值,一旦声明,在程序中就不会改变。 常量声明指定其名称、数据类型和值,并为其分配存储空间。 该声明还可以施加 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.