mysql表的基本数据类型

一、mysql基本数据类型

mysql的数据类型大致分为:数值、时间和字符串

二、数值类型

tinyint[(m)] [unsigned] [zerofill]
    小整数,数据类型用于保存一些范围的整数数值范围:
    有符号:
        -128~127
    无符号:
        0~255
    特别的:MYSQL中无布尔值,使用tinyint(1)构造

int[(m)] [unsigned] [zerofill]
    整数,数据类型用于保存一些范围的整数数值范围:
    有符号:
        -2147483648~ 2147483647
    无符号:
        0~ 4294967295
    特别的:整数类型中的m仅用于显示,对存储范围无限制。
    例如:int(5),当插入数据

bigint[(m)] [unsigned] [zerofill]
    大整数,数据类型用于保存一些范围的整数数值范围:
        有符号:
            -9223372036854775808 ~  9223372036854775807
        无符号:
            0 ~ 18446744073709551615

decimal[(m[,d])] [unsigned] [zerofill]
    准确的小数值,m是数字总个数(符号不算),d是小数点后个数。m最大值为65,d最大值为30.

    特别的:对于精准数值计算时需要用此类型
        decaimal能够存储精确值的原因在于其内部按照字符串存储

三、字符串类型

char(10) 定长: 速度快(查的时候) 最大包含255个字符
varchar(10) 不定长:节省空间 最大包含255个字符

ps:创建数据表定长列向前放(SQL优化的一种手段)
注:虽然varchar使用起来比较灵活,但是从整体系统的性能角度来说,char数据类型的处理速度更快,有时甚至可以超出varchar处理速度的50%。因此,用户在设计数据库时应当综合考虑个方面的因素,以求达到最佳的平衡

为什么说char比varchar的查询速度快呢
因为这些固定长度是很容易计算下一个数据的偏移量的,所以读取的自然也会很快。而如果字段不是定长的,那么,每一次要找下一条的话,需要程序找到主键

text
text数据类型用于保存变长的大字符串,可以最多65535(2*16-1)个字符。

四、时间类型

DATE
        YYYY-MM-DD

TIME
    HH:MM:SS

YEAR
    YYYY

DATETIME
    YYYY-MM-DD HH:MM:SS

TIMESTAMP
    YYYYMMDD HHMMSS

ps:还有枚举类型enum和集合类型set,这里不在累述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值