當你在資料庫中建立資料表的時候,你需要定義表中所有欄位的類型。 ORACLE有許多種資料類型以滿足你的需求。資料類型大約分為:character, number, date, LOB, 和RAW等類型。雖然ORACLE8i也允許你自訂資料類型,但是它們是最基本的資料類型。
在下面的文章中你將會了解到他們在oracle 中的用法、限制以及允許值。
Character 資料類型
Character 資料類型用來儲存字母數字型資料。當你在oracle 中定義一個character 資料時,通常需要製定欄位的長度,它是該欄位的最大長度。 ORACLE提供以下幾種character 資料類型:
CHAR() CHAR資料型別是一種有固定長度和最大長度的字串。儲存在資料型別為CHAR欄位中的資料將以空格的形式補到最大長度。長度定義在1——2000位元組之間。
當你建立一個CHAR型字段,資料庫將保證在這個字段中的所有資料是定義長度,如果某個資料比定義長度短,那麼將用空格在資料的右邊補到定義長度。如果長度大於定義長度將會觸發錯誤訊息。
VARCHAR() varchar型資料是varchar2型資料的快照。
VARCHAR2() varchar2資料型別是一種可變長度的、有最大長度的字母數字型資料。 Varchar2類型的欄位長度可以達到4000字節,Varchar2類型的變數長度可以達到32676位元組。
一個空的varchar2(2000)欄位和一個空的varchar2(2)欄位所佔用的空間是一樣的。
NCHAR() 和NVARCHAR2() NCHAR() 和NVARCHAR2()資料型別分別與CHAR() 和VARCHAR2()型別是相同的,只不過它們用來儲存NLS(National Language Support)資料。
LONG LONG 資料類型是一個遺留下來的而且在將來不會被支援的資料類型。它將被LOB(Large Object)資料型別所取代。
比較規則Varchar2和char資料型別根據尾部的空格有不同的比較規則。對Char型數據,尾部的空格將被忽略掉,對於Varchar2型數據尾部帶空格的數據排序比沒有空格的要大些。比如:
Char 型資料: 'YO'='YO '
Varchar2型資料: 'YO'<'YO '
Numberic 資料型別Numberic 資料型別用來儲存負的和正的整數、分數和浮點型數據,範圍在-1*10-103 和9.999…99*10125之間,有38位元的精確度。標識一個資料超出這個範圍時就會出錯。
Number( ,) Number資料型別儲存一個有p位元精確度的s位元等級的資料。
DATE 資料類型
DATE 資料類型用來儲存日期和時間格式的資料。這種格式可以轉換成其他格式的資料去瀏覽,而且它有專門的函數和屬性用來控制和計算。以下的幾種資訊都包含在DATE資料類型中:
Century
Year
Month
Day
Hour
Minute
Second
LOB 資料類型LOB(Large Object) 資料類型儲存非結構化數據,例如二進位文件,圖形文件,或其他外部文件。 LOB 可以儲存到4G位元組大小。資料可以儲存到資料庫中也可以儲存到外部資料檔案中。 LOB資料的控制透過DBMS_LOB 套件實現。 BLOB, NCLOB, 和CLOB 資料可以儲存到不同的表空間中,BFILE儲存在伺服器上的外部檔案中。 LOB資料型態有以下幾種:
BLOB: 二進位資料CLOB: 字元型資料BFILE: 二進位檔案其他資料類型ROWID ROWID 資料類型是ORACLE資料表中的一個偽列,它是資料表中每行資料內在的唯一的識別。
本文出自CSDN博客,轉載請標示出處: http://blog.csdn.net/chenliubin/archive/2009/12/21/5046504.aspx
-