[Oracle]存储汉字字段长度
我们系统当中如果备注字段要输入200个汉字,则该字段要么设置成varchar2(600);或者nvarchar2(200).
下面提供参考,针对Oracle设置备注字段保存汉字长度问题。
总结:
1. Varchar2的字段,保存汉字量是长度/3, 即 varchar2 (30) 的字段,必能保存10个汉字。
2. nvarchar2的字段,保存汉字是1:1的,即 nvarchar2 (30) 的字段,必能保存30个汉字。
Create table |
createtable test_test (idnumbernotnull, remark_varchar2 varchar2(10), remark_nvarchar2 nvarchar2(10)); |
|
测试两个字段保存10个汉字长度内容“一二三四五六七八九十” |
测试varchar2(10)到底能保存几个汉字 |
在这里针对varchar2 类型字段,1个汉字抵3个长度。 2.改为存储三个汉字“一二三”,可以保存成功。
|
测试nvarchar2(10)到底能保存几个汉字 |
1.十个汉字可以正常保存
2.十一个汉字呢,保存报错,提示实际长度11.
|