下表给出了它们的存储范围:

我在MySQL中建立了一个表,有一列为FLOAT(5, 3);做了以下试验:
1)插入123.45678,最后查询得到的结果为99.999;
2)插入123.456,最后查询结果为99.999;
3)插入12.34567,最后查询结果为12.346;
所以,在使用浮点型的时候,还是要注意陷阱的,要以插入数据库中的实际结果为准。
例如我们存储工作人员的工资就是使用FLOAT(8,2) UNSIGNED:
| CREATE TABBLE tb1( salary FLOAT(8,2) UNSIGNED ); |
二、日期时间类型
在处理日期和时间类型的值时,MySQL带有5个不同的数据类型可供选择。它们可以被分成简单的日期、时间类型,和混合日期、时间类型。根据要求的精度,子类型在每个分类型中都可以使用,并且MySQL带有内置功能可以把多样化的输入格式变为一个标准格式。
下表解释了五种日期和时间类型:

1)、MySQL用DATE和YEAR类型存储简单的日期值,使用TIME类型存储时间值。这些类型可以描述为字符串或不带分隔符的整数序列。如果描述为字符串,DATE类型的值应该使用连字号作为分隔符分开,而TIME类型的值应该使用冒号作为分隔符分开。需要注意的是,没有冒号分隔符的TIME类型值,将会被MySQL理解为持续的时间,而不是时间戳。
2)、除了日期和时间数据类型,MySQL还支持DATEYIME和TIMESTAMP这两种混合类型。它们可以把日期和时间作为单个的值进行存储。这两种类型通常用于自动存储包含当前日期和时间的时间戳,并可在需要执行大量数据库事务和需要建立一个调试和审查用途的审计跟踪的应用程序中发挥良好作用。如果我们对TIMESTAMP类型的字段没有明确赋值,或是被赋与了NULL值。MySQL会自动使用系统当前的日期和时间来填充它。
例如我们存储添加用户的出生年月就是使用:
| CREATE TABBLE tb1( brithday DATE ); |
三、字符串类型
MySQL提供了6个基本的字符串类型,分别为CHAR、VARCHAR、TINYTEST、TEXT、MEDIUMTEXT、LONGTEXT六种字符串类型。可以存储的范围从简单的一个字符到巨大的文本块或二进制字符串数据。
下标解释了六种基本字符串类型:










