摘自:https://wenda.so.com/q/1513900100217695?src=170&q=varchar2%281%29%E5%A4%9A%E5%A4%A7
varchar2是oracle中獨有的類型,可以存儲0-20個數字(英文寫法),如果是中文數字的話只能存儲10個。
創建測試表:
create table test
(id int,
name varchar2(20));
執行這句,這里是21個數字:
insert into test values (1,'123456789012345678901');
測試一下中文數字:
insert into test values (1,'一二三四五六七八九十一');
結果是雷同的:
所以,varchar2(20)只能存20個數字,或十個中文。
該部分摘自:https://www.cnblogs.com/Grand-Jon/p/7389427.html
一、Oracle中的varchar2類型
-
我們在Oracle數據庫存儲的字符數據一般是用VARCHAR2。VARCHAR2既分PL/SQL Data Types中的變量類型,也分Oracle Database中的字段類型,不同場景的最大長度不同。
-
在Oracle Database中,VARCHAR2 字段類型,最大值為4000;PL/SQL中 VARCHAR2 變量類型,最大字節長度為32767。
-
當 VARCHAR2 容納不下我們需要存儲的信息時,就出來的Oracle的大數據類型LOB( Large Object,大型對象)。
二、Oarcle中的LOB類型
-
在Oracle中,LOB(Large Object,大型對象)類型的字段現在用得越來越多了。因為這種類型的字段,容量大(最多能容納4GB的數據),且一個表中可以有多個這種類型的字段,很靈活,適用於數據量非常大的業務領域(如圖象、檔案等)。
-
LOB類型分為BLOB和CLOB兩種:BLOB即二進制大型對象(Binary Large Object),適用於存貯非文本的字節流數據(如程序、圖象、影音等)。
-
而CLOB,即字符型大型對象(Character Large Object),則與字符集相關,適於存貯文本型的數據(如歷史檔案、大部頭著作等)。