6.不起眼的知识-字符和字节大小

1.本文背景

常常的数据库会采用的不同的字符集来匹配数据库常用的数据存储。在每种字符集编码规则下,一个字符所占用的字节大小会不一样。

下面将介绍查看ORA中字符长度(即拥有多少个字符)、字符大小(即每个字符占用多少个字节)的方法

2、查询方法

ORACLE 中提供了几个函数查看字符长度和字符大小

2.1 查看字符长度

select LENGTH('走你') from dual ;

#一般情况下,所有的字符集的字符长度都是一样的,即多少个字符长度就为多少。字符即常见到的中文、符号、特殊符号、数字、字母等

对于超过4000个字符的大字段,我们可以使用以下函数计算字符长度

SELECT DBMS_LOB.GETLENGTH(clob_column) FROM TAB_NAME;

2.2 查看字符大小

select LENGTHB('走你') from dual ;

#字符大小在每种字符集编码规则下就会有所不同,可使用上述函数查询计算。例如:

在简体中文:ZHS16GBK 字符集中,一个汉字占2个字节

在UTF8 字符集:AL32UTF8 字符集中,一个汉字占3个字节

所以字符大小需要根据实际去计算

后续将更新字符大小和数据块中实际的占用大小。。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值