mysql的数据类型

类型说明
整数类型1.tinyni,smallint,mediumint,int,bigint分别是8,16,24,32,64为存储空间。它们可以存储的范围从-2^(N-1) ~2^(N-1)-1,N为存储空间的位数
2.unsigned:非负数,可以使正数的上限提高一倍。
3.有符号和无符号类型使用相同的存储空间,并具有相同的性能,因此可以根据实际情况选择合适的类型
4.mysql可以为整数 类型指定宽度,如int(11),对大多数应用这是没有意义的,对于存储和计算来说,int(1)和int(20)是相同的
实数类型float / decimal
字符串类型1. char /varchar
2.使用varchar(5)和varchar(200)存储hello的空间开销是一样的,但是更长的列会消耗更多的内存,因为mysql通常会分配固定大小的内存块来保存内部值。尤其是使用内存临时表进行排序或操作时会特别糟糕。在利用临时表进行排序时也同样糟糕。
文本类型1.blob和text类型
2.blob和text都是为存储很大的数据而设计的字符串数据类型,分别采用二进制和的字符方式存储。
3.tinytext / smalltext / text / mediumtext /longtext
4.tinyblob / smallblob / blob / mediumblob / longblob
5.mysql把每个blob和text值当做一个独立的对象处理。存储引擎在存储是通常会特殊处理。
6.memory引擎不支持blob和text类型,所以,如果查询使用了blob或text列并且需要使用隐式临时表,将不得不使用myisam磁盘临时表,即使只有几行数据也是如此。
7.precona server的memory引擎支持blob和text类型,但是还是需要使用磁盘临时表
8.text会对性能开销影响大,最好的解决方案是尽量避免使用blob和text类型
枚举类型1.枚举类型实际存储为整数,而不是字符串。因此,枚举字段是按照内部存储的整数而不是定义的字符串进行排序的。
2.order by field指定排序
日期和时间类型1.datetime:保存大范围的值,从1001~9999年,精度为秒,存储格式YYYYMMDDHHMMSS,与时区无关
2.timestamp:存储时间范围,1970~2038年
ip类型无字符号整数存储IP地址,mysql提供inet_aton()和inet_ntoa()函数在这两种表示方法之间转换。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值