ORACLE數據類型

 欄位類型   中文說明   限制條件   其它說明       CHAR   固定長度字元串   最大長度2000   bytes             VARCHAR2   可變長度的字元串   最大長度4000   bytes     可做索引的最大長度749       NCHAR   根據字符集而定的固定長度字元串   最大長度2000   bytes             NVARCHAR2   根據字符集而定的可變長度字元串   最大長度4000   bytes             DATE   日期(日-月-年)   DD-MM-YY(HH-MI-SS)   經過嚴格測試,無千蟲問題       LONG   超長字元串   最大長度2G(231-1)   足夠存儲大部頭著作       RAW   固定長度的二進位數據   最大長度2000   bytes     可存放多媒體圖象聲音等       LONG   RAW   可變長度的二進位數據   最大長度2G   同上       BLOB   二進位數據   最大長度4G           CLOB   字元數據   最大長度4G           NCLOB   根據字符集而定的字元數據   最大長度4G           BFILE   存放在資料庫外的二進位數據   最大長度4G           ROWID   數據表中記錄的唯一行號   10   bytes   ********.****.****格式,*為0或1       NROWID   二進位數據表中記錄的唯一行號   最大長度4000   bytes       NUMBER(P,S)   數字類型   P為整數位,S為小數位       DECIMAL(P,S)   數字類型   P為整數位,S為小數位       INTEGER   整數類型   小的整數       FLOAT   浮點數類型   NUMBER(38),雙精度       REAL   實數類型   NUMBER(63),精度更高    

數據類型

參數

描述

char(n)

n=1 to 2000位元組

定長字元串,n位元組長,如果不指定長度,預設為1個位元組長(一個漢字為2位元組)

varchar2(n)

n=1 to 4000位元組

可變長的字元串,具體定義時指明最大長度n, 這種數據類型可以放數字、字母以及ASCII碼字符集(或者EBCDIC等資料庫系統接受的字符集標準)中的所有符號。 如果數據長度沒有達到最大值n,Oracle 8i會根據數據大小自動調節欄位長度, 如果你的數據前後有空格,Oracle 8i會自動將其刪去。VARCHAR2是最常用的數據類型。 可做索引的最大長度3209。

number(m,n)

m=1 to 38 n=-84 to 127

可變長的數值列,允許0、正值及負值,m是所有有效數字的位數,n是小數點以後的位數。 如:number(5,2),則這個欄位的最大值是99,999,如果數值超出了位數限制就會被截取多餘的位數。 如:number(5,2),但在一行數據中的這個欄位輸入575.316,則真正保存到欄位中的數值是575.32。 如:number(3,0),輸入575.316,真正保存的數據是575。

date

從公元前4712年1月1日到公元4712年12月31日的所有合法日期, Oracle 8i其實在內部是按7個位元組來保存日期數據,在定義中還包括小時、分、秒。 預設格式為DD-MON-YY,如07-11月-00 表示2000年11月7日。

long

可變長字元列,最大長度限制是2GB,用於不需要作字元串搜索的長串數據,如果要進行字元搜索就要用varchar2類型。 long是一種較老的數據類型,將來會逐漸被BLOB、CLOB、NCLOB等大的對象數據類型所取代。

raw(n)

n=1 to 2000

可變長二進位數據,在具體定義欄位的時候必須指明最大長度n,Oracle 8i用這種格式來保存較小的圖形文件或帶格式的文本文件,如Miceosoft Word文檔。 raw是一種較老的數據類型,將來會逐漸被BLOB、CLOB、NCLOB等大的對象數據類型所取代。

long raw

可變長二進位數據,最大長度是2GB。Oracle 8i用這種格式來保存較大的圖形文件或帶格式的文本文件,如Miceosoft Word文檔,以及音頻、影片等非文本文件。 在同一張表中不能同時有long類型和long raw類型,long raw也是一種較老的數據類型,將來會逐漸被BLOB、CLOB、NCLOB等大的對象數據類型所取代。

blob clob nclob

三種大型對象(LOB),用來保存較大的圖形文件或帶格式的文本文件,如Miceosoft Word文檔,以及音頻、影片等非文本文件,最大長度是4GB。 LOB有幾種類型,取決於你使用的位元組的類型,Oracle 8i實實在在地將這些數據存儲在資料庫內部保存。 可以執行讀取、存儲、寫入等特殊操作。

bfile

在資料庫外部保存的大型二進位對象文件,最大長度是4GB。 這種外部的LOB類型,通過資料庫記錄變化情況,但是數據的具體保存是在資料庫外部進行的。 Oracle 8i可以讀取、查詢BFILE,但是不能寫入。 大小由作業系統決定。

數據類型是列或存儲過程中的一個屬性。

    Oracle支援的數據類型可以分為三個基本種類:字元數據類型、數字數據類型以及表示其它數據的數據類型。

字元數據類型

     CHAR            char數據類型存儲固定長度的字元值。一個CHAR數據類型可以包括1到2000個字元。如果對CHAR沒有明確地說明長度,它的默認長度則設置為1。如果對某個CHAR類型變數賦值,其長度小於規定的長度,那麼Oracle自動用空格填充。

VARCHAR2 存儲可變長度的字元串。雖然也必須指定一個VARCHAR2數據變數的長度,但是這個長度是指對該變數賦值的最大長度而非實際賦值長度。不需用空格