程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> PL/SQL數據類型及操作符

PL/SQL數據類型及操作符

編輯:關於Oracle數據庫
標量(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提供更好的性能 。

  NUMBER 數字型 能存放整數值和實數值,並且可以定義精度和取值范圍
  BINARY_INTEGER 數字型 可存儲帶符號整數,為整數計算優化性能
  DEC 數字型 NUMBER的子類型,小數
  DOUBLE PRECISION 數字型 NUMBER的子類型,高精度實數
  INTEGER 數字型 NUMBER的子類型,整數
  INT 數字型 NUMBER的子類型,整數
  NUMERIC 數字型 NUMBER的子類型,與NUMBER等價
  REAL 數字型 NUMBER的子類型,與NUMBER等價
  SMALLINT 數字型 NUMBER的子類型,取值范圍比INTEGER小
  VARCHAR2 字符型 存放可變長字符串,有最大長度

  表2 字符數據類型

datatype rang subtype description CHAR 最大長度32767字節 CHARACTER 存儲定長字符串,如果長度沒有確定,缺省是1 LONG 最大長度2147483647字節   存儲可變長度字符串 RAW 最大長度32767字節   用於存儲二進制數據和字節字符串,當在兩個數據庫之間進行傳遞時,RAW數據不在字符集之間進行轉換。 LONGRAW 最大長度2147483647   與LONG數據類型相似,同樣他也不能在字符集之間進行轉換。 ROWID 18個字節   與數據庫ROWID偽列類型相同,能夠存儲一個行標示符,可以將行標示符看作數據庫中每一行的唯一鍵值。 VARCHAR2 最大長度32767字節 STRINGVARCHAR 與VARCHAR數據類型相似,存儲可變長度的字符串。聲明方法與VARCHAR相同

  CHAR 字符型 定長字符串
  LONG 字符型 變長字符串,最大長度可達32,767
  DATE 日期型 以數據庫相同的格式存放日期值
  BOOLEAN 布爾型 TRUE OR FALSE
  ROWID ROWID 存放數據庫的行號

  表3 DATE和BOOLEAN

datatype range description BOOLEAN TRUE/FALSE 存儲邏輯值TRUE或FALSE,無參數 DATE 01/01/4712 BC 存儲固定長的日期和時間值,日期值中包含時間
  LOB數據類型

  LOB(大對象,Large object) 數據類型用於存儲類似圖像,聲音這樣的大型數據對象,LOB數據對象可以是二進制數據也可以是字符數據,其最大長度不超過4G。LOB數據類型支持任意訪問方式,LONG只支持順序訪問方式。LOB存儲在一個單獨的位置上,同時一個"LOB定位符"(LOB locator)存儲在原始的表中,該定位符是一個指向實際數據的指針。在PL/SQL中操作LOB數據對象使用ORACLE提供的包DBMS_LOB.LOB數據類型可分為以下四類:

  . BFILE
  . BLOB
  . CLOB
  . NCLOB

  操作符

  與其他程序設計語言相同,PL/SQL有一系列操作符。操作符分為下面幾類:

  . 算術操作符

  . 關系操作符

  . 比較操作符

  . 邏輯操作符

  算術操作符如表4所示

operator operation + 加 - 減 / 除 * 乘 ** 乘方
  關系操作符主要用於條件判斷語句或用於where子串中,關系操作符檢查條件和結果是否為true或false,表5是PL/SQL中的關系操作符

operator operation < 小於操作符 <= 小於或等於操作符 > 大於操作符 >= 大於或等於操作符 = 等於操作符 != 不等於操作符 <> 不等於操作符 := 賦值操作符
  表6 顯示的是比較操作符
operator operation IS NULL 如果操作數為NULL返回TRUE LIKE 比較字符串值 BETWEEN 驗證值是否在范圍之內 IN 驗證操作數在設定的一系列值中
  表7.8顯示的是邏輯操作符
operator operation AND 兩個條件都必須滿足 OR 只要滿足兩個條件中的一個 NOT 取反
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved