今天的面试我败在了Oracle的varchar2的最大长度上

今天去了一家公司面试,一开始做笔试题,不算太难,但是里面有一道题,我是真的没有了解过,原谅我太菜了。

笔试题:Oracle中varchar2的最大长度是多少?

傻傻的我蒙了个2000(醉了)

回来后查了资料后才知道Oracle中的VARCHAR2字段类型,最大值为4000,SQL参考手册中也明确指出VARCHAR2的最大大小为4000,注意此处的最大长度是指字节长度,而不是指字符个数。最多可以存入4000个字母,或最多存入2000个汉字(数据库字符集编码是GBK时,varchar2最多能存放2000个汉字,数据库字符集编码是UTF-8时,那就最多只能存放1333个汉字,可以说varchar2能存入多少个汉字是受字符编码的影响)

 

既然都说了varchar2那也说说nvarchar2吧。

nvarchar2的最大值2000,单位是字符,也就是说不管是汉字还是字母,每个字符的长度都是2个字节。所以nvarchar2类型的数据最多能存放2000个汉字,也最多只能存放2000个字母。并且NVARCHAR2不受数据库字符集的影响。

你可能感兴趣的:(Oracle,数据库笔记,Oracle,varchar2,nvarchar2)