zoukankan      html  css  js  c++  java
  • MYSQL支持的数据类型-数值类型

    一、数值类型分类

    MYSQL支持所有标准SQL中的数值类型,其中包括严格数值类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISON),并在此基础上扩展增加了TINYINT、MEDIUMINT、BIGINT这三种整型,并增加了BIT类型,用来存放位数据

    其中整数类型包括:TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT

    浮点数类型包括:FLOAT、DOUBLE

    定点数类型包括:DECIMAL(DEC)(M,D) 

    位类型包括:BIT(M) 

    补充:

    BIT(M)    1-8字节      最小值BIT(1)              最大值BIT(64)

    二、整数类型

    在整数类型中,一共分位5种(tinyint,smallint,mediuint,int,bigint),在设置整数数值类型时,要确定好取值范围,选择合适的数值类型,避免出现Out of  range的情况,同时要加上数值的长度,int默认长度位11,int(11),可以和zerofill一起使用

    create table t1 (id1 int);
    alter table t1 modify id1 int zerofill;
    insert into t1 values(1);
    select * from t1;
    id1
    00000000001

    如果插入大于宽度限制的值,不会影响数据的插入,但是数值的长度没有意义。

    所有的整数类型都有一个可选的属性UNSIGEND(无符号),如果需要在字段里面保存非复数或者需要较大的上限值时,可以加入该字段,它的取值范围为:下限取0,上限值取原值的两倍。

    整数类型的另一个属性:AUTO_INCREMENT。在需要产生唯一标识符或顺序时,可利用此属性。一般从1开始,每行增加1,NULL插入时也会自增,一个表中最多只能有一个AUTO_INCREMENT。对于定义该属性,应该同时定义为NOT NULL,并定义为PRIMARY KEY或定义UNIUQE键。

    对于小数表示:mysql有两种表示:浮点数和定点数,浮点数包括float(单精度)和double(双精度),定点数只有一种decimal表示。定点数在mysql中以字符串形式存放,比浮点数更精确,适合用来表示货币等精度高的数据。

    小数都可以用类型名称后加(M,D),M-精度:一共显示M位(整数+小数)D-标度:保留小数点后D位,但是这种是非标准用法,建议不使用,建议使用默认精度,浮点数的默认值又实际的硬件和操作系统决定,decimal默认整数为10位,小数为0位。

    插入小数时会按照实际精度值显示,超入精度会四舍五入,不会报错,而插入定点数。

    BIT(位)类型:略

  • 相关阅读:
    springCloud中的服务调用feign
    模块化理解
    springCloud中的注册中心Nacos
    vue路由理解
    vue生命周期理解
    webpack理解
    连接查询理解
    [HDU]5691Sitting in Line (状压DP)
    [Kattis]redblacktree(树形依赖背包,DP优化)
    Codeforces Round #699 (Div. 2)
  • 原文地址:https://www.cnblogs.com/lijingang/p/10606650.html
Copyright © 2011-2022 走看看