我想将值33.55555
插入到数据库中。即使将mysql行更改为float
或decimal
,我也无法正确执行此操作。
MySQL:
ALTER TABLE `test` CHANGE `test1` `test1` DECIMAL( 10,10 ) NOT NULL
插入33.55555
后,通过此SQL命令将其转换为0.9999999999
ALTER TABLE `test` CHANGE `test1` `test1` FLOAT( 10,10 ) NOT NULL
33.55555
转换为1.0000000000
您的 DECIMAL() 和 FLOAT() 声明已关闭。第一个参数是您希望数字有多长,第二个参数是其中有多少是小数。所以当你说 FLOAT(10,10) 时,你是说给我一列长 10 位数字,其中 10 位数字在小数点后
。十进制和浮点数在近似方面也不同。小数是定点值,而浮点数是浮点值。
.999999999 和 1.000000 是列的最大值。
尝试插入 35.55555:
ALTER TABLE `test` CHANGE `test1` `test1` DECIMAL( 7,5 ) NOT NULL