您的位置:首页 > 数据库 > Oracle

oracle一个中文占几个字节?

2017-12-08 16:16 211 查看
在创建oracle数据表时,有时针对存储的字符串字段需要明确的定义类型以及长度,这时就需要知道一个汉字在Oracle数据库中具体占用几个字节,
下面我们就来介绍查询的几种方式:

方式一、这个其实和Oracle的配置是相关的,用以下语句查询当前数据库的字符集:

	select * from v$nls_parameters t where t.PARAMETER='NLS_CHARACTERSET';
可以得到如下结果:
如果value=ZHS16GBK,那么一个汉字占用2个字节,
如果value=AL32UTF8,那么一个汉字占用3个字节(这是Oracle数据库默认的)。

方式二、查看oracle server端字符集

 select userenv('language')from dual;如果结果是下面这样的,一个汉字就占用两个字节SIMPLIFIED CHINESE_CHINA.ZHS16GBK 如果结果是下面这样的,那么一个汉字就占用三个字节SIMPLIFIED CHINESE_CHINA.AL32UTF8 

方式三、4000也可以尝试用以下语句查询一个汉字占用的字节长度

selectlengthb('你')from dual;PS: 方式一和方式二需要的用户权限会高一点
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: