容易搞混的【数据库】类型

  今天将excel中的数据导入到MYSQL数据中,因为EXCEL表中有经纬度类似于:

  128.2881595635500

这么长的小数位数,不知道用什么数据类类型了?前后试了试 float double decimal numeric 这4中数据类型

经过查资料和测试得出以下结论:

1.float:浮点型(只显示7个有效位,对最后一位数四舍五入。)

2.double:双精度实型(只显示15个有效位,对最后一位四舍五入。)

3.decimal(numeric 同义):数字型,不存在精度损失,常用于银行帐目计算。(可以支持28位,对最后一位四舍五入。)

注:1、float和double的相乘操作,数字溢出不会报错,会有精度的损失。

     2、当对decimal类型进行操作时,数值会因溢出而报错。

decimal(M,D)用法:

·M是数字的最大数(精度)。其范围为1~65(在较旧的MySQL版本中,允许的范围是1~254),M 的默认值是10。

·D是小数点右侧数字的数目(标度)。其范围是0~30,但不得超过M。

说明:float占4个字节,double占8个字节,decimail(M,D)占M+2个字节。

事例:如DECIMAL(5,2) 的最大值为9 9 9 9 . 9 9,因为有7 个字节可用。

posted @ 2017-05-27 14:13  晴天的世界s  阅读(159)  评论(0编辑  收藏  举报