oracle中汉字占几个字节

大家是否经常遇到数据表某字段长度不够了。一般我们在存字符串时用VARCAHR2类型,而VARCHAR2有两种用法,一种是VARCHAR2(10 btye),另一种是VARCHAR2(10 char)。前者是默认值,表示10个字节,后者表示10个字符。

一个汉字占几个字节和oracle库的字符集有关系。如果字符集是ZHS16GBK,一个汉字就占2个字节;如果字符集是AL32UTF8,一个汉字就是占3个字节

如果查看oracle的字符集:

java 复制代码
SELECT * FROM v$nls_parameters WHERE PARAMETER='NLS_CHARACTERSET';

如果不想查看当前数据库的字符集,想知道当前oracle库一个汉字占几个字节,可以利用lengthb()函数,这是查看当前数据库一个汉字占几个字节

length()函数是查看当前字符串占几个字符,也就是字符串长度。

java 复制代码
select  lengthb('中国')  from dual; // 6个字节
相关推荐
小王C语言10 分钟前
MySQL 内置函数:日期函数、字符串函数、数学函数、其他函数
数据库·mysql
ClouGence1 小时前
当 AI 开始直接操作数据库,传统数据库管理工具还有必要吗?
数据库·后端·agent
渣渣盟1 小时前
误删数据之后:MySQL、PostgreSQL、Oracle三库紧急恢复完全实操手册
mysql·postgresql·oracle
Hugh-Yu-1301232 小时前
zhangxuefeng-skill配置教程
数据库
布莱克6052 小时前
理解B+树:原理、特性与应用场景
数据结构·数据库·mysql
冰暮流星2 小时前
mysql之排序查询
数据库·mysql
7177772 小时前
让权限治理成为可复制资产:Gitee Team 空间配置方案与安全级别落地详解
数据库·gitee
今天AI了吗2 小时前
Agent & AI 名词大扫盲
数据库·人工智能·python·sql·rust
葡萄城技术团队2 小时前
告别宽表拖拽:SpreadJS 如何让 Web 表格承接 Excel 操作习惯
数据库·html·excel
2603_966437263 小时前
格式化之后数据还能恢复吗?说清恢复条件
linux·运维·数据库