亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

ORACLE數據類型

系統 1831 0
本文轉自: http://www.baanerp.com/post/95.html
字段類型 ? 中文說明 ? 限制條件 ? 其它說明 ? ?
? 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數據變量的長度,但是這個長度是指對該變量賦值的最大長度而非實際賦值長度。不需用空格填充。最多可設置為4000個字符。因為VARCHAR2數據類型只存儲為該列所賦的字符(不加空格),所以VARCHAR2需要的存儲空間比CHAR數據類型要小。

??? Oracle推薦使用VARCHAR2

???? NCHAR和NVARCHAR2 NCHAR和NVARCHAR2數據類型分別存儲固定長度與可變長度的字符串,但是它們使用的是和數據庫其他類型不同的字符集。在創建數據庫時,需要指定所使用的字符集,以便對數據中數據進行編碼。還可以指定一個輔助的字符集[即本地語言集]。NCHAR和NVARCHAR2類型的列使用輔助字符集。NCHAR和NVARCHAR2類型的列使用輔助字符集。

???? 在Oracle 9i中,可以以字符而不是字節為單位表示NCHAR和NVARCHAR2列的長度。

???? LONG long數據類型可以存放2GB的字符數據,它是從早期版本中繼承下來的。現在如果存儲大容量的數據,Oracle推薦使用CLOB和NCLOB數據類型。在表和SQL語句中使用LONG類型有許多限制。

???? CLOB和NCLOB ?? CLOB和NCLOB數據類型可以存儲多達4GB的字符數據。NCLOB數據類型可存儲NLS數據。

???? 數字數據類型

???? Oracle使用標準、可變長度的內部格式來存儲數字。這個內部格式精度可以高達38位。

???? NUMBER 數據類型可以有兩個限定符,如:column NUMBER(precision,scale)。precision表示數字中的有效位。如果沒有指定precision的話,Oracle將使用38作為精度。scale表示小數點右邊的位數,scale默認設置為0。如果把scale設成負數,Oracle將把該數字取舍到小數點左邊的指定位數。

???? 日期數據類型

????? Oracle標準日期格式為:DD-MON-YY HH:MI:SS

????? 通過修改實例的參數NLS_DATE_FORMAT,可以改變實例中插入日期的格式。在一個會話期間,可以通過Alter session SQL命令來修改日期,或者通過使用SQL語句的TO_DATE表達式中的參數來更新一個特定值。

????? 其它的數據類型

????? RAW和LONG RAW ??? RAW和LONG RAW數據類型主要用于對數據庫進行解釋。指定這兩種類型時,Oracle以位的形式來存儲數據。RAW數據類型一般用于存儲有特定格式的對象,如位圖。RAW數據類型可占用2KB的空間,而LONG RAW數據類型則可以占用2GB大小。

????? ROWID ROWID是一種特殊的列類型,稱之為偽列(pseudocolumn)。ROWID偽列在SQL SELECT語句中可以像普通列那樣被訪問。Oracle數據庫中每行都有一個偽列。ROWID表示行的地址,ROWID偽列用ROWID數據類型定義。

????? ROWID與磁盤驅動的特定位置有關,因此,ROWID是獲得行的最快方法。但是,行的ROWID會隨著卸載和重載數據庫而發生變化,因此建議不要在事務中使用ROWID偽列的值。例如,一旦當前應用已經使用完記錄,就沒有理由保存行的ROWID。不能通過任何SQL語句來設置標準的ROWID偽列的值。

???? 列或變量可以定義成ROWID數據類型,但是Oracle不能保證該列或變量的值是一個有效的ROWID。

??? LOB( 大型對象)數據類型,可以保存4GB的信息。LOB有以下3中類型:

???? < CLOB >,只能存儲字符數據

??? < NCLOB >,保存本地語言字符集數據

??? < BLOB >?? ,以二進制信息保存數據

???? 可以指定將一個LOB數據保存在Oracle數據庫內,還是指向一個包含次數據的外部文件。

???? LOB可以參與事務。管理LOB中的數據必須通過DBMS_LOB PL/SQL內置軟件包或者OGI接口。

???? 為了便于將LONG數據類型轉換成LOB,Oracle 9i包含許多同時支持LOB和LONG的函數,喊包括一個ALTER TABLE語句的新選擇,它允許將LONG數據類型自動轉換成LOB。

??? BFILE

???? BFILE數據類型用做指向存儲在Oracle數據庫以外的文件的指針。

???? XML Type

???? 作為對XML支持的一部分,Oracle 9i包含了一個新的數據類型XML Type。定義為XMLType的列將存儲一個字符LOB列中的XML文檔。有許多內置的功能可以使你從文檔中抽取單個節點,還可以在XML Type文檔中對任何節點創建索引。

???? 用戶自定義數據

???? 從Oracle 8以后,用戶可以定義自己的復雜數據類型,它們由Oracle基本數據類型組合而成。

???? AnyType、AnyData和AnyDataSet

????? Oracle包括3個新的數據類型,用于定義在現有數據類型之外的數據結構。其中每種數據類型必須用程序單元來定義,以便讓Oracle9i知道如何處理這些類型的特定實現。

??? 類型轉換

??? Oracle會自動將某些數據類型轉換成其他的數據類型,轉換取決于包括該值的SQL語句。

??? 數據轉換還可以通過Oracle的類型轉換函數顯示地進行。

??? 連接與比較

??? 在大多數平臺上Oracle SQL中的連接操作符用兩條豎線(||)表示。連接是將兩個字符值連接。Oracle的自動類型轉換功能使得兩個數字值也可以進行連接。

??? NULL

??? NULL值是關系數據庫的重要特征之一。實際上,NULL不代表任何值,它表示沒有值。如果要創建表的一個列,而這個列必須有值,那么應將它指定為NOT NULL,這表示該列不能包含NULL值。

??? 任何數據類型都可以賦予NULL值。NULL值引入了SQL運算的三態邏輯。如果比較的一方是NULL值,那么會出現3種狀態:TURE、FALSE以及兩者都不是。

??? 因為NULL值不等于0或其他任何值,所以測試某個數據是否為NULL值只能通過關系運算符IS NULL來進行。

??? NULL值特別適合以下情況:當一個列還未賦值時。如果選擇不使用NULL值,那么必須對行的所有列都要賦值。這實際上也取消了某列不需要值的可能性,同時對它賦的值也很容易產生誤解。這種情況則可能誤導終端用戶,并且導致累計操作的錯誤結果。

number(p,s)
p:1~38
s:-84~127
p>0,對s分2種情況:1. s>0
精確到小數點右邊s位,并四舍五入。然后檢驗有效數位是否<=p;如果s>p,小數點右邊至少有s-p個0填充。
2. s<0
精確到小數點左邊s位,并四舍五入。然后檢驗有效數位是否<=p+|s|

123.2564 NUMBER 123.2564

1234.9876 NUMBER(6,2) 1234.99

12345.12345 NUMBER(6,2) Error

1234.9876 NUMBER(6) 1235

12345.345 NUMBER(5,-2) 12300

1234567 NUMBER(5,-2) 1234600

12345678 NUMBER(5,-2) Error

123456789 NUMBER(5,-4) 123460000

1234567890 NUMBER(5,-4) Error

12345.58 NUMBER(*, 1) 12345.6

0.1 NUMBER(4,5) Error

0.01234567 NUMBER(4,5) 0.01235

0.09999 NUMBER(4,5) 0.09999

ORACLE數據類型


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美影院一区 | 欧美乱人免费视频观看 | 日韩欧美亚洲综合 | 狠狠色丁香婷婷综合欧美 | 久草在线看片 | 国产福利一区二区精品视频 | 成人深夜视频 | 婷婷激情视频 | 亚洲图片 中文字幕 | 亚洲美女视频在线观看 | 欧美福利精品福利视频在线观看 | 91国高清视频 | 日本特级全黄一级毛片 | 国产精品免费_区二区三区观看 | 久久精品一区二区免费看 | 国产一级二级三级 | 一级毛片在线免费播放 | 日韩永久免费视频 | 激情欧美 | 伊人五月天婷婷琪琪综合 | 精品国产成人高清在线 | 日本成人tv | 日韩久久精品一区二区三区 | 成年女人视频播放免费观看 | 久久精品av77777 | 欧洲美女啪啪 | 国产毛片一区二区 | 欧美成人亚洲欧美成人 | 成人激情在线视频 | 欧美毛片网站 | 欧美日本一道免费一区三区 | 日本成人一区二区 | 国产成人短视频 | 国产成人精品日本亚洲专一区 | 99久久香蕉国产综合影院 | 97精品伊人 | 天啪天天久久天天综合啪 | a免费毛片在线播放 | 精品欧美一区二区三区在线观看 | 欧美精品a毛片免费观看 | 夜夜操天天射 |