mysql varchar char 区别
2015-11-11 10:38
501 查看
1:varchar() 是变长存储,括号内为最大存储字节数,当低于255的时候,vachar需要用一个字节来存储长度,如果大于255,则需要两个字节来存储。char则是定义多少就用多少字节。当存入的数据不足时,会用空格来补齐。
2:varchar对空间是节省的,但char的效率更高一些。
3:现有磁盘如此廉价情况下,存储一些较少字节的数据时用char更合适一些,如下图,当存储四个字节的时候不同的情况不见的varchar就比char用的少。
4:当末尾有空格的时候,char会把数据右边所有的空格删除,因此如果数据右边有空格是看不到的。
总的来说,char是一个效率优先的定义,varchar是一个空间优先的定义。
2:varchar对空间是节省的,但char的效率更高一些。
3:现有磁盘如此廉价情况下,存储一些较少字节的数据时用char更合适一些,如下图,当存储四个字节的时候不同的情况不见的varchar就比char用的少。
值 | CHAR(4) | 存储需求 | VARCHAR(4) | 存储需求 |
'' | <span ' ' | 4个字节 | '' | 1个字节 |
'ab' | <span 'ab ' | 4个字节 | 'ab ' | 3个字节 |
'abcd' | 'abcd' | 4个字节 | 'abcd' | 5个字节 |
'abcdefgh' | 'abcd' | 4个字节 | 'abcd' | 5个字节 |
总的来说,char是一个效率优先的定义,varchar是一个空间优先的定义。
相关文章推荐
- 记一次MySQl 安装1067错误
- MySQL utf-8 插入中文出错 解决办法
- MySQL存储过程中的3种循环
- MySQL中处理Null时要注意两大陷阱
- com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException
- MySQL的安装以及基本的管理命令和设置
- mysql常用命令
- mysql常用操作总结
- Mysql如何为表字段添加索引???
- CAS单点登录之mysql数据库用户验证及常见问题
- dos启动mysql
- 开发小技巧-移除mysql服务
- servlet+JSP+mysql实现文件上传的方法
- MySQL的安装以及基本的管理命令和设置
- 详解MySQL插入和查询数据的相关命令及语句使用
- MySQL中的alter table命令的基本使用方法及提速优化
- MySQL中使用SHOW PROFILE命令分析性能的用法整理
- ubuntu mysql操作
- 1045-Access denied for user 'root'@'localhost'(using password:YES)
- mysql结果集中加序号和结果集中加默认值