MySQL数据库操作补坑(一)数据类型


疫情期间数据库学的一直不是很好,后边发现别人都比自己会的多,现在来补补坑。


数据类型

数据类型介绍

1)、整数类型

整数类型 字节数 无符合的取值范围 有符合的取值范围
TINYINT 1 0~255 -128~127
SMALLINT 2 0~65535 -32768~32767
MEDIUMINT 3 0~16777215 -8388608~8388607
INT 4 0~4294967295 -2147483648~2147483647
INTEGER 4 0~4294967295 -2147483648~2147483647
BIGNT 8 0~18446744071709551615 -9223372036854775808~9223372036854775807

基本形式:数据类型(显示宽度)

计算无符合数的取值范围

  • 取值范围
    一个字节 = 8bit。由此可推算出,TINYINT类型数据无符号的取值范围为 28-1= 255;有符号的取值范围27-1=127。
  • zerofill
    搭配zerofill使用参数使用时,数字不足的显示空间由0填补。使用该参数时,MYSQL会自动加上UNSIGNED属性,只能表示无符号数,其显示宽度比默认宽度小1。
  • 显示宽度
    设置为int(11)的数据当输入111111时也可以显示,此时设置的显示宽度在显示该记录时将失效,但数据的显示宽度不能大于数据的默认宽度。如果大于了其最大值,将是不可插入的。

2)、浮点类型和定点数类型

整数类型 字节数 负数的取值范围 非负数的取值范围
FLOAT 4 -3.4028223466E+38 ~ -1.175494351E-38 0和1.175494351E-38 ~ 3.402823466E+38
DOUBLE 8 -1.7976931348623157E+308~ -2.2250738585072014E-308 0和2.2250738585072014E ~ 1.7976931348623157E+308
DECIMAL M+2 同DOUBLE类型 同DOUBLE类型

基本形式:数据类型(M,D)

M参数为精度,小数点不占位置
D参数称为标度,是指小数点后的长度为D

  • 精度问题
    在定义时不建议此形式,其不是标准用法,可能影响数据库的迁移
    如果插入值的的精度高于实际定义的精度,系统会自动进行四舍五入处理。FLOAT和DOUBLE类型在四舍五入时不会报错,而DECIMAL型会有警告。
    如果不指定精度,浮点数和定点数尤其默认的精度。FLOAT型和DOUBLE型默认保存实际精度(与操作系统有关)。DECIMAL型默认为整数。

3)、日期与时间型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值