程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle PL/SQL語言基礎--(2)

Oracle PL/SQL語言基礎--(2)

編輯:Oracle數據庫基礎
變量和常量

  變量存放在內存中以獲得值,能被PL/SQL塊引用。你可以把變量想象成一個可儲藏東西的容器,容器內的東西是可以改變的。

  聲明變量

  變量一般都在PL/SQL塊的聲明部分聲明,PL/SQL是一種強壯的類型語言,這就是說在引用變量前必須首先聲明,要在執行或異常處理部分使用變量,那麼變量必須首先在聲明部分進行聲明。

  聲明變量的語法如下:

Variable_name [CONSTANT] databyte [NOT NULL][:=|DEFAULT expression]
  注意:可以在聲明變量的同時給變量強制性的加上NOT NULL約束條件,此時變量在初始化時必須賦值。

  給變量賦值

  給變量賦值有兩種方式:

  . 直接給變量賦值

   X:=200;
   Y=Y+(X*20);

  . 通過SQL SELECT INTO 或FETCH INTO給變量賦值

SELECT SUM(SALARY),SUM(SALARY*0.1)
INTO TOTAL_SALARY,TATAL_COMMISSION
FROM EMPLOYEE
WHERE DEPT=10;

  常量

  常量與變量相似,但常量的值在程序內部不能改變,常量的值在定義時賦予,,他的聲明方式與變量相似,但必須包括關鍵字CONSTANT。常量和變量都可被定義為SQL和用戶定義的數據類型。

ZERO_VALUE CONSTANT NUMBER:=0;
  這個語句定了一個名叫ZERO_VALUE、數據類型是NUMBER、值為0的常量。

  標量(scalar)數據類型

  標量(scalar)數據類型沒有內部組件,他們大致可分為以下四類:

   . number
   . character
   . date/time
   . boolean

  表1顯示了數字數據類型;表2顯示了字符數據類型;表3顯示了日期和布爾數據類型。

  表1 Scalar Types:Numeric
Datatype Range Subtypes description BINARY_INTEGER -214748-2147483647 NATURAL
NATURAL
NPOSITIVE
POSITIVEN
SIGNTYPE
用於存儲單字節整數。
要求存儲長度低於NUMBER值。
用於限制范圍的子類型(SUBTYPE):
 NATURAL:用於非負數
 POSITIVE:只用於正數
 NATURALN:只用於非負數和非NULL值
 POSITIVEN:只用於正數,不能用於NULL值
 SIGNTYPE:只有值:-1、0或1. NUMBER 1.0E-130-9.99E125 DEC
DECIMAL
DOUBLE
PRECISION
FLOAT
INTEGERIC
INT
NUMERIC
REAL
SMALLINT 存儲數字值,包括整數和浮點數。可以選擇精度和刻度方式,語法:
number[([,])]。
缺省的精度是38,scale是0. PLS_INTEGER -2147483647-2147483647   與BINARY_INTEGER基本相同,但采用機器運算時,PLS_INTEGER提供更好的性能 。
  表2 字符數據類型
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved