不能将float或decimal插入mysql db

Dol*_*rma 2 mysql sql

我想将值插入33.55555数据库.即使将mysql行更改为float或后decimal,我也无法正确执行此操作.
MySQL的:

ALTER TABLE `test` CHANGE `test1` `test1` DECIMAL( 10,10 ) NOT NULL 
Run Code Online (Sandbox Code Playgroud)

插入后将33.55555其转换为0.9999999999通过此sql命令

ALTER TABLE `test` CHANGE `test1` `test1` FLOAT( 10,10 ) NOT NULL 
Run Code Online (Sandbox Code Playgroud)

33.55555 转换为 1.0000000000

Bla*_*ick 5

您的DECIMAL()和FLOAT()声明已关闭.第一个参数是您希望数字的长度,第二个参数是其中有多少是小数.所以当你说FLOAT(10,10)时,你要说的是给我一个10位数的列,小数点后面的10位数字.

Decimal和Float在近似方面也不同.小数是固定点值,而浮点数是浮点值.

.999999999和1.000000是列的最大值.

试试这个插入35.55555:

ALTER TABLE `test` CHANGE `test1` `test1` DECIMAL( 7,5 ) NOT NULL 
Run Code Online (Sandbox Code Playgroud)