Oracle中varchar2(XX)和varchar2(XX byte)区别


这两个相不相同是由参数NLS_LENGTH_SEMANTICS决定的,有两个单位,char(字符)或者字节(byte),该参数默认值为BYTE。

alter session set nls_length_semantics=char;


SQL> show parameter nls_length_semantics;

NAME                     TYPE     VALUE
------------------------------------ ----------- --------------
nls_length_semantics                  string      BYTE

 

对于SYS和SYSTEM而言不受该NLS_LENGTH_SEMANTICS影响,始终为BYTE

请不要随意修改SYSTEM级别的NLS_LENGTH_SEMANTICS,否则一些成品套件例如EBS将可能无法正常运行。
posted @ 2017-06-22 09:57  酸奶加绿茶  阅读(331)  评论(0编辑  收藏  举报