mysqltinyint对应java什么类型_MySQL数据类型与Java数据类
型
update是什么MySQL 中常见的数据类型:tinyint,int,bigint 整数类型
float,double,decimal 浮点类型
date,dateTime,time,timestamp 时间类型
char,varchar,text,tinytext,longtext,json ⽂本类型
MySQL数据类型 java 数据类型映射
int 整数型tinyint 占⽤1个字节,取值范围-128到127,tinyint(1)⽤来表⽰boolean类型,0代表false,⾮0代表true
int占⽤4个字节,取值范围232,在java中会映射成Integer类型
bigint占⽤8个字节,取值范围264,在java中会映射成Long 类型
MySQL中我们在声明类型时,不管是int(9),bigint(9)后⾯带的位数9不会限制他们的存值的⼤⼩,int(1)它的存执返回也在232 之
间,bigint(1)存值范围在264之间;
浮点类型float(m,d) 单精度,M是总位数,D是⼩数点后⾯的位数。单精度浮点数精确到⼤约7位⼩数。
double(m,d) 双精度,双精度浮点数精确到⼤约15位⼩数。
decimal(m,d) 最⼤位数(M)为 DECIMAL65.最⼤⽀持⼩数数(D)为30.如果D省略,则默认值为0.如果M省略,则默认值为10。
float 与decimal 的区别就是float 不精准,可能会丢失⼩数位值;所以float,double 是⾮标准数据类型,decimal是标准类型;
字符类型char 占⽤固定⼤⼩空间,长度范围0到255之间的任何值;
varchar 根据具体的字符⼤⼩占⽤空间,长度可以指定为0到65,535之间的值;
text 使⽤的是⽂本类型,存储的内容⽐varchar 更⼤;
char 与varchar的区别char(4) 不管存的是'a'还是'abcd' 都占四个字节;存'a '当不满四个字节是会以空格填充;
varchar(4) 存的是'a' 只占⼀个字节,'abcd'占⽤四个接⼝,存的是'abcde'因为长度超过4,会报超过长度的错误;
⽇期与时间类型timestamp 时间戳,占⽤4个字节 范围是'1970-01-01 00:00:01.000000'UTC到'2038-01-19
03:14:07.999999'UTC。 timestamp不能存储'1970-01-01 00:00:00'这个时间值,需要从01秒开始;如果在做insert或者update 时,没有指定明确值,可以通过default current_timestamp 指定为当前时间,on update current_timestamp;UTC 是世界标准时间,也就是存储的时间是按时间标准时间存储的;
datetime 占⽤8个字节,时间的取值范围'1000-01-01 00:00:00.000000'到 '9999-12-31 23:59:59.999999'。范围要⽐timestamp⼴。
timestamp 与datetime的区别?timestamp 占⽤的空间⼩,时间范围也⼩,存储的时间以世界标准时间存储的;datetime存储的是客户端时间;
如:timestamp 字段存了'2019-06-05 19:36:38',datetime 存了'2019-06-05 19:36:38',如果通过set tim
e_zone='+0:00'修改MySQL的时区,以timestamp类型存储的时间会变成'2019-06-05 11:36:38',datetime类型保存的时间不会变,与中国的时区相差8⼩时;
show variables like '%time_zone%'; 查看时区
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论