ORACLE中的資料型別

2021-05-26 13:42:34 字數 3064 閱讀 5547

char        固定長度字元域,最大長度可達2 000 個位元組 

nchar       多位元組字符集的固定長度字元域,長度隨字符集而定,最多為2 000個字元或2 000個位元組 

varchar2    可變長度字元域,最大長度可達4 000 個字元 

nvarchar2   多位元組字符集的可變長度字元域,長度隨字符集而定,最多為4 000個字元或4 000個位元組 

date       用於儲存全部日期的固定長度( 7個位元組)字元域,時間作為日期的一部分儲存其中。除非 

通過設定init. ora檔案的nls_date_format引數來取代日期格式,否則查詢時,日期以 

dd-mon-yy格式表示,如13-apr-99表示1999.4.13 

number     可變長度數值列,允許值為0、正數和負數。number值通常以4個位元組或更少的位元組儲存 

long       可變長度字元域,最大長度可到2gb 

raw        表示二進位制資料的可變長度字元域,最長為2 000 個位元組 

long raw    表示二進位制資料的可變長度字元域,最長為2 gb 

mlslabel     只用於trusted oracle,這個資料型別每行使用2至5個位元組 

blob        二進位製大物件,最大長度為4 gb 

clob         字元大物件,最大長度為4gb 

nclob        多位元組字符集的clob資料型別,最大長度為4 gb 

bfile       外部二進位制檔案,大小由作業系統決定 

rowid        表示rowid的二進位制資料,oracle 8 rowid的數值為1 0個位元組, 

urowid 用於資料定址的二進位制資料,最大長度為4 000 個位元組

當你在資料庫中建立資料表的時候,你需要定義表中所有欄位的型別。oracle有許多種資料型別以滿足你的需要。資料型別大約分為:character, number, date, lob, 和raw等型別。雖然oracle8i也允許你自定義資料型別,但是它們是最基本的資料型別。在下面的文章中你將了解到他們在oracle 中的用法、限制以及允許值。

lcharacter 資料型別

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)資料。

longlong 資料型別是乙個遺留下來的而且在將來不會被支援的資料型別。它將被lob(large object)資料型別所代替。

比較規則varchar2和char資料型別根據尾部的空格有不同的比較規則。對char型資料,尾部的空格將被忽略掉,對於varchar2型資料尾部帶空格的資料排序比沒有空格的要大些。比如:

char 型資料:              『yo』=『yo     』

varchar2型資料:           『yo』<』yo     』

lnumberic 資料型別

numberic 資料型別用來儲存負的和正的整數、分數和浮點型資料,範圍在-1*10-103 和9.999…99*10125之間,有38位的精確度。標識乙個資料超出這個範圍時就會出錯。

number(,)number資料型別儲存乙個有p位精確度的s位等級的資料。

ldate 資料型別

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: 二進位制檔案

其他資料型別

oracle中的資料型別

字段型別 中文說明 限制條件 其它說明 char 固定長度字串 最大長度2000 bytes varchar2 可變長度的字串 最大長度4000 bytes 可做索引的最大長度749 nchar 根據字符集而定的固定長度字串 最大長度2000 bytes nvarchar2 根據字符集而定的可變長度...

Oracle中的資料型別

oracle 8 資料型別 資料型別 引數描述 char n n 1 to 2000位元組 定長字串,n位元組長,如果不指定長度,預設為1個位元組長 乙個漢字為2位元組 varchar2 n n 1 to 4000位元組 可變長的字串,具體定義時指明最大長度n,這種資料型別可以放數字 字母以及asc...

ORACLE 中的資料型別

一 標量資料型別 1 varchar2 size nvarchar2 size 變長字串 2 char size nchar size 定長字串,其中n開頭的是儲存國際化字串的用於支援多國語言的字符集。3 date日期型別 timesatmp除了日期和時間外還包括了多達小數點後9位的秒數 times...