关于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

总结起来,有几点:

  1. 经常变化的字段用varchar
  2. 知道固定长度的用char
  3. 尽量用varchar
  4. 超过255字符的只能用varchar或者text
  5. 能用varchar的地方不用text   

最新文章

  1. Web安全
  2. 开源的EtherCAT Master简介
  3. text()、html() 以及 val()的区别
  4. dedecms 网站优化技巧
  5. 【Roman To Integer】cpp
  6. TOJ3650 Legal or Not
  7. Redis教程03——Redis 发布/订阅(Pub/Sub)
  8. maclean-【性能调优】Oracle AWR报告指标全解析 学习笔记
  9. xss漏洞校验
  10. POJ训练计划2299_Ultra-QuickSort(归并排序求逆序数)
  11. Ubuntu12.10无法安装openssh-server[已解决]
  12. 使用C++做算法时,对内存的管理的办法
  13. Spark核心技术原理透视一(Spark运行原理)
  14. (Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)
  15. [NOI2005]维护数列——平衡树观止
  16. jquery中添加元素append,prepend,before和after方法的区别
  17. Codevs1541[USACO]围墙涂色
  18. mysql-5.6.17-win32安装
  19. (Android 即时通讯) [悬赏],无论是谁发现一个漏洞奖励人民币1000元!
  20. 解决WPF图片模糊最佳方法

热门文章

  1. {"errcode":40029,"errmsg":"invalid code, hints: [ req_id: LEgfftXIRa-BU8_9 ]"}
  2. pdf转换
  3. linux 能ping通IP但无法解析域名
  4. Spring 动态多数据源
  5. C++ list用法总结
  6. TCP如何保证可靠传输
  7. JS框架_(JQuery.js)夜晚天空满天星星闪烁动画
  8. jsPDF生成pdf文件和中文编码
  9. sessionStorge和localStorage的使用-踩坑记_09
  10. html 行内元素和块级元素