Oracle資料型別

2021-08-26 13:02:56 字數 2057 閱讀 5942

聯絡:1.varchar/varchar2用於儲存可變長度的字串

比如varchar(20),存入字串'abc',則資料庫中該字段只佔3個位元組,而不是20個位元組

2.size 的最大值是 4000,而最小值是 1,其值表示位元組數,比如

varchar(20)表示最大可以存放20個位元組的內容

區別:1.varchar2把所有字元都佔兩位元組處理(一般情況下),varchar只對漢字和全形等字元佔兩位元組,數字,英文本元等都是乙個位元組;

2.varchar2把空串等同於null處理,而varchar仍按照空串處理;

3.varchar2字元要用幾個位元組儲存,要看資料庫使用的字符集,

比如gbk,漢字就會佔兩個位元組,英文1個

如果是utf-8,漢字一般佔3個位元組,英文還是1個。

但是一般情況下,我們都認為是兩個位元組處理,因為oracle安裝時候預設我們都選擇gbk的編碼格式,但是我們在頁面做輸入字串長度的校驗的時候,還是以資料庫設計字段最大長度除3來作為最大長度-----防止資料庫移植時設定不同編碼格式;

比如:varchar2(10),一般情況下最多存放5個漢字,10個字元

--nvarchar,nvarchar2

聯絡:1.nvarchar/nvarchar2用於儲存可變長度的字串

2.size 的最大值是 4000,而最小值是 1,其值表示字元的個數,而不是位元組數

3.這兩種型別更適合儲存中文

區別:1.nvarchar中字元為中文則一般按2個位元組計算,英文數字等按照乙個自己計算

2.nvarchar2中所有字元均按照2個位元組計算;

3.nvarchar2雖然更佔空間,但是它有更好的相容性,所有推薦使用;

varchar2(size)

可變長度的字串,其最大長度為size個位元組;size的最大值是4000,而最小值是1;你必須指定乙個varchar2的size;

nvarchar2(size)

可變長度的字串,依據所選的國家字符集,其最大長度為size個字元或位元組;size的最大值取決於儲存每個字元所需的位元組數,其上限為4000;你必須指定乙個nvarchar2的size;

number(p,s)

精度為p並且數值範圍為s的數值;精度p的範圍從1到38;數值範圍s的範圍是從-84到127;

例如:number(5,2) 表示整數部分最大3位,小數部分為2位;

number(5,-2) 表示數的整數部分最大為7其中對整數的倒數2位為0,前面的取整。

number 表示使用預設值,即等同於number(5);

long

可變長度的字元資料,其長度可達2g個位元組;

date

有效日期範圍從西元前2023年1月1日到公元後2023年12月31日

raw(size)

長度為size位元組的原始二進位制資料,size的最大值為2000位元組;你必須為raw指定乙個size;

long raw

可變長度的原始二進位制資料,其最長可達2g位元組;

char(size)

固定長度的字元資料,其長度為size個位元組;size的最大值是2000位元組,而最小值和預設值是1;

nchar(size)

也是固定長度。根據unicode標準定義

clob

乙個字元大型物件,可容納單位元組的字元;不支援寬度不等的字符集;最大為4g位元組

nclob

乙個字元大型物件,可容納單位元組的字元;不支援寬度不等的字符集;最大為4g位元組;儲存國家字符集

blob

乙個二進位制大型物件;最大4g位元組

bfile

包含乙個大型二進位制檔案的定位器,其儲存在資料庫的外面;使得可以以字元流i/o訪問存在資料庫伺服器上的外部lob;最大大小為4g位元組.

oracle資料型別

char 用於描述定長的字元型資料,長度 2000位元組 varchar2 用於描述變長的字元型資料,長度 4000位元組 nchar 用來儲存unicode字符集的定長字元型資料,長度 1000位元組 nvarchar2 用來儲存unicode字符集的變長字元型資料,長度 1000位元組 numb...

Oracle資料型別

一 概述 標量 scalar 復合 composite 引用 reference lob 二 標量 scalar 合法的標量型別與資料庫的列所使用的型別相同,此外它還有一些擴充套件。它又分為七個組 數字 字元 行 日期 行標識 布林和可信。數字,它有三種基本型別 number pls integer...

Oracle 資料型別

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