Oracle中的數據類型:varchar2所帶參數


varchar2(byte) 存儲的是字節。

varchar2(char) 存儲的是字符。

 

varchar2(2 byte) 最多可以存儲2個字節,varchar2(2 char) 最多可以存儲2個字符。

 

當數據庫字符集分別:

1.為 AL32UTF8 時,1個漢字是1個字符,1個漢字占3個字節,varchar2(2 byte) 一個漢字也不能存,varchar2(2 char) 能存2個漢字。

2.為 ZHS16GBK時,1個漢字是1個字符,1個漢字占2個字節,varchar2(2 byte) 能存1個漢字,varchar2(2 char) 能存2個漢字。

 

默認情況下,在指定數據類型為 varchar2(2) 時是什么情況呢?這跟數據庫中的一個參數有關: NLS_LENGTH_SEMANTICS

select name,value from v$parameter where name='nls_length_semantics';

NAME                           VALUE
------------------------------ ------------------------------
nls_length_semantics BYTE

 如果該參數的值為 byte ,則 varchar2(2) 等同於 varchar2(2 byte),這是默認情況。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM