mysql数据库中的每个列都应该有适当的数据类型,用于限制或允许该列中存储的数据。mysql的数据类型分别有整数,浮点数和定点数类型,日期和时间类型,字符串类型和二进制类型等。
整数类型
数值型数据类型主要是用来存储数字,不同的数据类型提供不同的取值范围,取值范围越大,所需的存储空间也会越大。因此应该根据实际需要选择最合适的类型,这样有利于提高查询的效率和节省存储空间。
浮点数类型和定点数类型
mysql中使用浮点数和定点数来表示小数。而浮点数有两种:单精度浮点数float和双精度浮点数double。定点数只有一种decimal。
MySQL 浮点型和定点型可以用类型名称后加(M,D)来表示,M表示该值的总共长度,D表示小数点后面的长度,M和D又称为精度和标度,如float(7,4)的 可显示为-999.9999,MySQL保存值时进行四舍五入,如果插入999.00009,则结果为999.0001。
FLOAT 和 DOUBLE 在不指 定精度时,默认会按照实际的精度来显示,而 DECIMAL 在不指定精度时,默认整数为10,小数为0。
日期和时间类型
mysql支持的日期类型有:year,time,date,datetime和timestamp等;
注:mysql对不同日期和时间类型,存数据时支持字符串和数值以及不同格式.如:
date类型输入'20200504'或者'2020-05-04',插入数据库的日期为2020-05-04。
字符串和二进制类型
mysql为了可以存储字符串、图片和声音等数据,MySQL提供了字符串和二进制类型。其中字符串类型有CHAR,VARCHAR,BINARY,VARBINARY,BLOB,TEXT,ENUM,SET等,
mysql中的二进制字符串有BIT,BITARY,VARBINARY,TINYBLOB,BLOB,MEDIUMBLOB和LONGBLOB等;