首页 > 数据库技术 > 详细

一个汉字在数据库占几个字节

时间:2020-07-09 22:49:16      阅读:124      评论:0      收藏:0      [点我收藏+]

项目中oracle10g数据库表字段为varchar(n)类型,存英文很简单,只要字母个数不大于n即可。但是对于汉字,按照同样的方法就不行了。因为对于汉字不同的字符集,在数据库占用的字节是不一样的。UTF-8字符集,一个汉字占三个字节,gbk字符集,一个汉字占两个字节,比如varchar(10)类型的字段,UTF-8的汉字,只能存3个,gbk字符集的汉字却能存5个。
所以在程序中根据表字段varchar的大小,保存或更新时作出必要的校验否则后台会报错。
办法:1、用表格 maxlength属性,比如maxlength="5",即只能存5个汉字。

 

MySQL 5.0以上的版本:

1.一个汉字占多少长度与编码有关:

UTF-8:一个汉字=3个字节

GBK:一个汉字=2个字节

 

2.varchar(n)表示n个字符,无论汉字和英文,Mysql都能存入n个字符,仅是实际字节长度有所区别

 

3.MySQL检查长度,可用SQL语言:

select LENGTH(fieldname) from tablename 来查看

一个汉字在数据库占几个字节

原文:https://www.cnblogs.com/apolloren/p/13276607.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!