MySQL基础语句-表操作-数据类型-字符串类型

现在我们来了解一下MySQL中的字符串类型。

字符串类型分为以下几类:

MySQL基础语句-表操作-数据类型-字符串类型

表格中以BOLB结尾的都是用来存储二进制数据,表格中以TEXT用来存储非二进制数据。

二进制数据是按字节存储的,非二进制数据是按照字符存储的。虽然在计算机中都是二进制形式,但还是有有区别的。

字节(Byte)是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位。

字符(Character)计算机中使用的字母、数字、字和符号,比如'A'、'B'、'#39;、'&'等。

通常一个英文字母占一个字节,一个字符占2个字节。对应关系会根据编码方式不同而不同。

  • 字节与字符:
    • ASCII 码中,一个英文字母(不分大小写)为一个字节,一个中文汉字为两个字节。
    • UTF-8 编码中,一个英文为一个字节,一个中文为三个字节。
    • Unicode 编码中,一个英文为一个字节,一个中文为两个字节。
    • 符号:英文标点为一个字节,中文标点为两个字节。例如:英文句号 . 占1个字节的大小,中文句号 “。”占2个字节的大小。
    • UTF-16 编码中,一个英文字母字符或一个汉字字符存储都需要 2 个字节(Unicode 扩展区的一些汉字存储需要 4 个字节)。
    • UTF-32 编码中,世界上任何字符的存储都需要 4 个字节。

通常我们经常使用的字符类型有char varchar。它们都是用来存储非二进制数据

char是定长字符串:char(10)表示你输入的字符串将占用10个字符长度,无论你输入的有没有达到10个字符的长度,都会占用10个字符的空间,多余部分会被舍弃。

varchar是变长字符串:varchar(10)表示你输入的字符串长度最多只能占用10个字符,机器会根据你所输入的长度分配空间。

例1

1、我们设置表中字段“father”的长度为3


MySQL基础语句-表操作-数据类型-字符串类型

2、向表格输入“段王爷”,没有报错。

MySQL基础语句-表操作-数据类型-字符串类型


3、当我们再添加一个字符时产生报错,报错原因是长度过长。

MySQL基础语句-表操作-数据类型-字符串类型

总结:

  • char用于确定字符长度的字段,如性别,只能是“男”或者“女”占用一个字符
  • varchar用于字段长度不确定的字段,如账号密码,账户名称等
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章