日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。
注意:在MySQL中,日期时间值使用单引号引起来。 相当于Java中Date,Calender。
最常用的整数类型:
MySQL列类型 Java数据类型
-------------------------------------------------------
INT/INTEGER: int/Integer
BIGINT: long/Long
----------------------------------------------------------------------
MySQL 以一个可选的显示宽度指示器的形式对 SQL 标准进行扩展,这样当从数据库检索一个值时,可以把这个值加长到指定的长度。
例如,指定一个字段的类型为 INT(6),就可以保证所包含数字少于 6 个的值从数据库中检索出来时能够自动地用空格填充。
需要注意的是,使用一个宽度指示器不会影响字段的大小和它可以存储的值的范围。一般不用指定位宽。
age int(2),并不是代表age最多存储99,查询age值得时候使用两个0来占位.
FLOAT[(s,p)] :
DOUBLE[(s,p)] : 小数类型,可存放实型和整型 ,精度(p)和范围(s)
money double(5,2): 整数和小数一共占5位.其中小数占2位,最大值:999.99,最小-999.99.
都不够精确。
定点数据类型: DECIMAL,高精度类型,金额货币优先选择。
----------------------------------------------------------------------------
MySQL列类型 Java数据类型
-------------------------------------------------------
FLOAT float/Float
DOUBLE double/Double
DECIMAL BigDecimal
char(size) 定长字符,0 - 255字节,size指N个字符数,若插入字符数超过设定长度,会被截取并警告。
varchar(size) 变长字符,0 - 255字节,从MySQL5开始支持65535个字节,若插入字符数超过设定长度,会被截取并警告。
一般存储大量的字符串,比如文章的纯文本,可以选用TEXT系列类型。
注意:在MySQL中,字符使用单引号引起来。 相当于Java中字符串(String,StringBuilder/StringBuffer);
日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。
注意:在MySQL中,日期时间值使用单引号引起来。 相当于Java中Date,Calender。
BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB:
存放图形、声音和影像,二进制对象,0-4GB。
但是,在开发中,我们一般存储二进制文件保存路径的路径存储在数据库中。
------------------------------------------------------------
BIT:我们一般存储0或1,存储是Java中的boolean/Boolean类型的值。
总结:
定义数据类型就是定义列,数据类型决定数据的特性。
数据类型主要分为字符串类型,浮点书类型和定点数类型,日期类型,以及二进制类型。
数据类型在不同的存储引擎上表现不同
根据所采用的数据类型,需求和数据特性选择数据类型。