• Mysql数据类型


    MySQL数据类型
    1、整型
    Java:byte,short,int,long
    mysql:
    tinyint byte 1个字节 -128~127, unsigned 0~255
    smallint short 2个字节
    mediumint 3个字节
    int 4个字节
    bigint long 8个字节

    例如:
    id int(8) 等价于 int(11)

    int(M):这个M是指宽度,如果单独使用(M)是没有意义,必须结合zerofill unsigned

    id int(8) zerofill unsigned: 1 ->00000001

    2、浮点型
    Java:float,double
    mysql:float,double

    mysql中的float和double可以指定宽度和精度
    double(M,D),例如:double(5,2) 存储范围是-999.99~999.99
    M是一共有几位,D表示小数点后有几位
    double(M,D) unsigned ,例如:double(5,2) unsigned 存储范围:0~999.99

    3、定点型
    Java:BigDecimal,BigInteger
    mysql:DECIMAL和NUMERIC 都是可以表示小数

    4、日期时间类型
    Java:java.sql.Date,java.sql.Time,java.sql.Timestamp
    mysql:date,time,timestamp,datetime,year
    date:日期
    time:时间
    timestamp,datetime:日期加时间
    year:只有年份

    timestamp,datetime:
    timestamp底层是使用毫秒表示,可以区分时区的(同一个毫秒值,在不同的时区,显示的结果是适用当前时区)
    范围:1970 ... ~ 2038....
    datetime是日期和时分秒表示,不区分时区,什么值就是什么值
    范围:1000....~ 9999....

    5、字符串类型
    Java中分为字符类型char和字符串类型String
    Mysql没有字符类型,都是字符串类型
    char:也是字符串类型
    varchar:也是字符串类型,如果是varchar,使用时,必须指定varchar(M)
    text:也是字符串类型

    char或char(1)表示存1个字符,如果char(M)存储M个字符
    char和varchar的区别:
    char一个是定长字符串,例如:char(8),'尚' 用'u0000'补全8位,char的读写速度快
    varchar一个是变长字符串 ,例如:varchar(8),'尚' 实际占尚这个字和这个字的字节数,varchar读写速度慢,节省空间
    例如是UTF-8 占3个字节 + 1个字节(存3这个数字)


    6、其他类型
    xxxbit
    xxxblob:二进制类型 可以存储二维码,小头像
    枚举类型:预定义几个值,从中选一个
    集合类型:预定义几个值,从中选多个

    7、特殊值:null
    在Java中,只有引用数据类型才能赋值为null
    要判断null值, if(变量 == null) 或 if(变量 !=null)
    null值不能用来计算,用来计算是要报错
    在MySQL中,所有类型都可以赋值为null
    要判断null值, is null 或 is not null
    null值用来计算不会报错,但是结果都是null

  • 相关阅读:
    java集合Collection常用方法详解
    JavaWeb_cookie和session
    JavaWeb_Cookie
    Java中双向链表
    Java链表基础
    select函数详解及实例分析
    socket select函数的详细讲解
    记录远程用户登录日志
    MSSQL grant
    dll 中使用ADO
  • 原文地址:https://www.cnblogs.com/hongfeng2019/p/11750224.html
Copyright © 2020-2023  润新知