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 yiibai.com!

PL/SQL procedure successfully completed.