mysql数据库varchar,能存多少个中文字。 ---浅谈字符与字节的区别

news/2025/4/2 2:41:47/

最近, 在存商品名字的长度, 给了varchar(20), 那这个20到底是商品名称汉字长度还是字节长度呢

这里会涉及到两个概念, 那就是字符和字节

字节(Byte): 是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位。
字符(Character): 计算机中使用的字母、数字、字和符号,比如'A'、'B'、'$'、'&'等。
一般在英文状态下一个字母或字符占用一个字节,一个汉字用两个字节表示。

字节与字符
ASCII 码中,一个英文字母(不分大小写)为一个字节,一个中文汉字为两个字节。

Unicode 编码中,一个英文为一个字节,一个中文(含繁体)为两个字节。
UTF-8 编码中,一个英文字为一个字节,一个中文(含繁体)为三个字节。

 1、一般mysql编码都是utf8

mysql 4.0版本以下,varchar(50), 指的是50字节,如果存放utf8汉字时,只能存放16个(每个汉字3字节)

mysql 5.0版本以上,varchar(50), 指的是50字符,无论存放的是数字、字母还是UTF8汉字(每个汉字3字节),都可以存放50个。

2、Input框长度限制是10的话,我们能输入几个汉字尼?

这个就涉及对于这个长度的校验是谁做,一般都是前端js校验(Value.length)。而如果是这种,一般单位都是10个字符,可以输入10个汉字

但是如果有人设计说在java层做校验怎么办(非常少),如果java直接获取字符长度字符:如int length = str.length,那么还是一样10个汉字

如果有人比较“狠”,获取字节长度: 如int length = str.getBytes(“GBK”).length;那么就又要进行字节转换了,有点难了, 也没必要


http://www.ppmy.cn/news/583659.html

相关文章

Linxu三剑客——Linux awk命令详解

Linux 系统中有一个功能更加强大的文本数据处理工具,就是 awk。它诞生于 20 世纪 70 年代末期,这也许是它影响了众多 Linux 用户的原因之一。 曾有人推测 awk 命令的名字来源于 awkward 这个单词。其实不然,此命令的设计者有 3 位&#xff0…

IDEA创建maven工程JDBC连接MySQL数据库中的遇到的问题以及相应的解决方案

首先创建一个maven工程 然后点击进入pom.xml文件&#xff0c;输入安装依赖。 输入数据库配置文件原码&#xff1a; <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.49</version>…

荣耀电脑怎么用U盘重装系统?荣耀电脑用U盘重装Win10系统教程

荣耀电脑怎么用U盘重装系统&#xff1f;用户想用U盘来给荣耀电脑重装Win10系统&#xff0c;但是不知道怎么操作才能完成Win10系统的重装&#xff0c;这时候用户需要准备一个大于8G的U盘&#xff0c;还有一个能够正常联网的荣耀电脑&#xff0c;最后根据小编分享的荣耀电脑用U盘…

CVE-2019-0708漏洞,kali的msf中模块利用

0x00 漏洞描述 2019年5月14日&#xff0c;微软发布了本月安全更新补丁&#xff0c;其中包含一个RDP&#xff08;远程桌面服务&#xff09;远程代码执行漏洞的补丁更新&#xff0c;对应CVE编号&#xff1a;CVE-2019-0708&#xff0c;相关信息链接&#xff1a; https://portal.…

HR小姐姐都能学会的2021最新最全云计算运维学习专栏

我是互联网老辛,关注我吧,给自己每天的进步找一个机会和理由,不要被无效信息淹没,免除知识焦虑 建议关注收藏,本文会持续更新; 前言 后台很多粉丝问,学习运维需要学习哪些内容? 我结合21年的招聘要求,以及各大公司的反馈整理了以下学习路线。 注意: 本路线是从零基…

Kali Linux-SET社会工程学攻击

前言 严正声明&#xff1a;本文仅限于技术讨论与分享&#xff0c;严禁用于非法途径。 社会工程攻击&#xff0c;是一种利用“社会工程学” (Social Engineering)来实施的网络攻击行为。比如免费下载的软件中捆绑了流氓软件、免费音乐中包含病毒、钓鱼网站、垃圾电子邮件中包括…

Kali Linux-Metasploit入侵Windows10系统

Kali Linux-Metasploit入侵Windows10 写在前文 距离上一次写KALI黑客攻防的博文已是去年这个时候了 之所以再次动手写这类的文章一是因为兴趣&#xff0c;二是看到网上五花八门的文章都是复制粘贴过来的&#xff0c;而且并没有写的很清楚&#xff0c;因此就有了本篇博客的出现…

kali metasploit 漏洞利用

准备 1.安装metaploitable靶场 2.metaploitable靶场是ubuntu操作系统 清除IP sudo dhclient -r 重新获取IP sudo dhclient 重新分配一下ip&#xff0c;使ip与kali保持同一网段 Samba MS-RPC Shell 命令注入漏洞(CVE-2007-2447) 1.漏洞描述 Samba是Samba团队开发的一套可使…