MySql:插入十进制值(失真)
你能帮我理解如何在表中插入十进制数据吗 我的代码:MySql:插入十进制值(失真),mysql,Mysql,你能帮我理解如何在表中插入十进制数据吗 我的代码: INSERT INTO wp_ved_currencies (date, char_code, name, nominal, value) VALUES('2019/11/25', 'USD', 'US dollar', 1, 31.0902); 问题是十进制值失真: 您应该为精度和比例使用不同的值 value decimal(20, 8) 这意味着20位,小数点后
INSERT INTO
wp_ved_currencies (date, char_code, name, nominal, value)
VALUES('2019/11/25', 'USD', 'US dollar', 1, 31.0902);
问题是十进制值失真:
您应该为精度和比例使用不同的值
value decimal(20, 8)
这意味着20位,小数点后有8位
或为您提供数据样本31.0902
value decimal(6, 4)
请为值列使用双(6,4)数据类型。
谢谢十进制(20,20)
表示您的十进制数最多可以有20位数字,所有数字都在小数点的右侧。总共20位-小数点后20位,左侧0位。此列中可存储的最大数字为
0.99999999999999999
使用两个不同的数字表示精度和比例。例如,DECIMAL(10,4)
允许的最大数字为9999999
您试图存储的数字溢出了可能的最大值,因此最大值存储在列中。我已尝试过。不工作。结果变成了9.9999。看起来很奇怪。。检查得更好。。可能您已经为十进制分隔符配置了逗号。。尝试插入310902这是因为您的MySQL设置不正确。正确配置的MySQL服务器将中止INSERT语句,并出现“超出范围”错误。