參考博客:
一、數字類型
1.NUMBER類型
NUMBER(P,S)是最常見的數字類型,可以存放數據範圍爲10^130~10^126(不包含此值),需要1~22字節(BYTE)不等的存儲空間。
P 是Precison的英文縮寫,即精度縮寫,表示有效數字的位數,最多不能超過38個有效數字
S是Scale的英文縮寫,可以使用的範圍爲-84~127。Scale爲正數時,表示從小數點到最低有效數字的位數,它爲負數時,表示從最大有效數字到小數點的位數。
2.INTEGER類型
INTEGER是NUMBER的子類型,它等同於NUMBER(38,0),用來存儲整數。若插入、更新的數值有小數,則會被四捨五入。
3.FLOAT類型
FLOAT類型也是NUMBER的子類型。
Float(n),數 n 指示位的精度,可以存儲的值的數目。N 值的範圍可以從 1 到 126。若要從二進制轉換爲十進制的精度,請將 n 乘以 0.30103。要從十進制轉換爲二進制的精度,請用 3.32193 乘小數精度。126 位二進制精度的最大值是大約相當於 38 位小數精度。
二、字符串類型
三、日期類型
1.DATE類型
2.TIMESTAMP類型
數據類型 | 參數 | 描述 |
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。 |
----