位置:首頁 > 數據庫 > PL/SQL教學 > PL/SQL常量和文字

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.