mysql中char,varchar与text类型的区别和选用

mysql中char,varchar与text类型的区别和选用

  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           

来源:http://blog.csdn.net/geniussnail/article/details/7753256

转载于:https://my.oschina.net/hongdaorong/blog/3034813

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值