char和varchar简单比较

本文详细解析了数据库中Char与VarChar两种数据类型的差异。Char类型为定长,适合存储长度固定的数据,查询效率高,但可能浪费空间。VarChar则是变长,节省空间,但查询效率相对较低,适合存储长度变化的数据。在选择数据类型时,应考虑数据长度、存储效率和内存消耗等因素,合理选择以优化数据库性能。
摘要由CSDN通过智能技术生成
区别charvarchar
最大长度255字符65535字符
长度设置定长变长
空间使用浪费空间节省空间
查找效率较高较低

解读varchar(20)

字段最多存放20个字符
varchar(20)和varchar(200)存放“MySQL”字符串的占用空间都是一样的
但varchar(200)排序时所占用的内存更多

补充说明

1)char存储数据时,数据段间没有间隔,且在创建列时已经确定列的长度,因此查询数据只需按部就班即可,效率高。
varchar存储数据时,每个数据段开头都要预留空间存放数据段的长度,数据段尾还有一段空间标记此字段的节数。因此遍历数据时,
读取时间更长,查询效率更低。
2)存储很短的数据,推荐用char类型。如(1)所分析,varchar还要1个字节的长度去存储信息长度,所以得不偿失。
3)数据长度固定,用char,定长类型,类似(2)。
4)经常改变数据的列,用char。varchar每次存储都需要额外的计算工作,char则不容易产生碎片。
5)该字段数据集的最大长度比平均长度长很多,用varchar。
6)varchar(5)和varchar(150)都存储“linux",虽然空间开销相同,但后者(更长的列)会消耗更多的内存,所以用多少,设多少。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值