社区
MySQL
帖子详情
mysql Float类型和double类型的区别
fanyi2003
2005-03-11 07:38:24
我在mysql数据库中设置了float(32,5)类型的数据 插入数据3947483999会变成3947483904.00000 而改成double(32,5)就正常了
请问:为什么会出现这种现象?
float,double型的数据在mysql中的存储方式是什么样的
...全文
4124
3
打赏
收藏
mysql Float类型和double类型的区别
我在mysql数据库中设置了float(32,5)类型的数据 插入数据3947483999会变成3947483904.00000 而改成double(32,5)就正常了 请问:为什么会出现这种现象? float,double型的数据在mysql中的存储方式是什么样的
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fanyi2003
2005-03-14
打赏
举报
回复
就是因为看了<MySQL 3.23 中文参考手册>一文,所以设置了float(32,5)这样一个字段来测试float
float是用4个([1,24))或者8个([24,53))字节存储数据,
我设置了数据3647483999插入表中 结果得到3647483904.00000 ,修改任何小数部分也得到3647483904.00000 然而修改成3947483904.00000,3997483904.00000 却成功保存
我开始怀疑是不是mysql的float类型的数据的高位字节和低位字节之间的进位有问题啊?
后来发现应该是与科学记数法有关,不管你设置多少位小数,当整数部分超过512的时候 mysql总是以科学技术法的方式来保存数据....
不知道这个分析对不对?
今晚打老虎2010
2005-03-11
打赏
举报
回复
FLOAT[(M,D)] [ZEROFILL]
一个小(单精密)浮点数字。不能无符号。允许的值是-3.402823466E+38到-1.175494351E-38,0 和1.175494351E-38到3.402823466E+38。M是显示宽度而D是小数的位数。没有参数的FLOAT或有<24 的一个参数表示一个单精密浮点数字。
DOUBLE[(M,D)] [ZEROFILL]
一个正常大小(双精密)浮点数字。不能无符号。允许的值是-1.7976931348623157E+308到-2.2250738585072014E-308、 0和2.2250738585072014E-308到1.7976931348623157E+308。M是显示宽度而D是小数位数。没有一个参数的DOUBLE或FLOAT(X)(25 < = X < = 53)代表一个双精密浮点数字。
jxhj
2005-03-11
打赏
举报
回复
double比float支持的位數要長
MySQL
中Decimal
类型
和
Float
Double的
区别
(详解)
float
,
double
类型
是可以存浮点数(即小数
类型
),但是
float
有个坏处,当你给定的数据是整数的时候,那么它就以整数给你处理。这样我们在存取货币值的时候自然遇到问题,我的default值为:0.00而实际存储是0,同样我...
Java数据
类型
和
MySql
数据
类型
对应一览
在
MySql
中,数字
类型
对应的是 INTEGER、BIGINT、
FLOAT
、DOUBLE 等
类型
。其中,INTEGER
类型
用于存储整数,BIGINT
类型
用于存储大整数,
FLOAT
类型
用于存储浮点数,DOUBLE
类型
用于存储双精度浮点数。 日期时间...
Java数据
类型
和
MySql
数据
类型
对应表
例如,我们可以使用 Java 的 int
类型
来映射
MySql
的 INTEGER
类型
,我们可以使用 Java 的 long
类型
来映射
MySql
的 BIGINT
类型
,我们可以使用 Java 的
float
类型
来映射
MySql
的
FLOAT
类型
,我们可以使用 Java...
MySql
数据库的列
类型
(字段
类型
).
M和D在
FLOAT
和DOUBLE中是可选的,默认,当
MySQL
版本大于3.23.6时,
FLOAT
和
DOUBLE
类型
将被保存为硬件所支持的最大精度。 如何选择数值类数据列
类型
?为了节省存储空间和提高数据库处理效率,我们应根据应用数据的...
java、
mysql
以及oracle数据
类型
对照表
此外,Java的浮点数
类型
(
float
和double)对应
MySQL
的
FLOAT
和DOUBLE,而在Oracle中,可以使用BINARY_
FLOAT
和BINARY_DOUBLE。 Oracle数据库提供了更多的复杂数据
类型
,如OBJECT、ARRAY、REF,这些在Java中可以通过...
MySQL
56,912
社区成员
56,754
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章