mysql中char,varchar与text类型的区别
2024-08-31 01:30:02
关于char,varchar与text平时没有太在意,一般来说,可能现在大家都是用varchar。但是当要存储的内容比较大时,究竟是选择varchar还是text呢?不知道。。。。。。
text 、 char、varchar 是数据在数据库中的存放策略问题,为了,合理
应用存储空间,是数据库服务器数据类型划分的方式。对于应用程序,把它们
和string对应就可以了。
于是去查阅了一些资料,顺便将这三种类型做个比较:
(1)char: char不用多说了,它是定长格式的,但是长度范围是0~255. 当你想要储存一个长度不足255的字符时,MySQL会用空格来填充剩下的字符。因此在读取数据时,char类型的数据要进行处理,把后面的空格去除。
(2)varchar: 关于varchar,有的说最大长度是255,也有的说是65535,查阅很多资料后发现是这样的:varchar类型在5.0.3以下的版本中的最大长度限制为255,而在5.0.3及以上的版本中,varchar数据类型的长度支持到了65535,也就是说可以存放65532个字节(注意是字节而不是字符!!!)的数据(起始位和结束位占去了3个字节),也就是说,在5.0.3以下版本中需要使用固定的TEXT或BLOB格式存放的数据可以在高版本中使用可变长的varchar来存放,这样就能有效的减少数据库文件的大小。
(3)text:与char和varchar不同的是,text不可以有默认值,其最大长度是2的16次方-1
总结起来,有几点:
- 经常变化的字段用varchar
- 知道固定长度的用char
- 尽量用varchar
- 超过255字符的只能用varchar或者text
- 能用varchar的地方不用text
最新文章
- Web安全
- 开源的EtherCAT Master简介
- text()、html() 以及 val()的区别
- dedecms 网站优化技巧
- 【Roman To Integer】cpp
- TOJ3650 Legal or Not
- Redis教程03——Redis 发布/订阅(Pub/Sub)
- maclean-【性能调优】Oracle AWR报告指标全解析 学习笔记
- xss漏洞校验
- POJ训练计划2299_Ultra-QuickSort(归并排序求逆序数)
- Ubuntu12.10无法安装openssh-server[已解决]
- 使用C++做算法时,对内存的管理的办法
- Spark核心技术原理透视一(Spark运行原理)
- (Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)
- [NOI2005]维护数列——平衡树观止
- jquery中添加元素append,prepend,before和after方法的区别
- Codevs1541[USACO]围墙涂色
- mysql-5.6.17-win32安装
- (Android 即时通讯) [悬赏],无论是谁发现一个漏洞奖励人民币1000元!
- 解决WPF图片模糊最佳方法
热门文章
- {";errcode";:40029,";errmsg";:";invalid code, hints: [ req_id: LEgfftXIRa-BU8_9 ]";}
- pdf转换
- linux 能ping通IP但无法解析域名
- Spring 动态多数据源
- C++ list用法总结
- TCP如何保证可靠传输
- JS框架_(JQuery.js)夜晚天空满天星星闪烁动画
- jsPDF生成pdf文件和中文编码
- sessionStorge和localStorage的使用-踩坑记_09
- html 行内元素和块级元素