我有一个类似这样的表结构:
Table Name: tbl_inventory_stock
id, INT, Primary Key
product_id, INT
store_id, INT
inventory_stok FLOAT
要更新的记录的值如下所示:
id: 622
product_id: 2364
store_id: 6
inventory_stok: 2382980
然后我将inventory_stok更改为2382979,既可以直接从phpmyadmin中的表更改,也可以执行如下语法:
UPDATE `tbl_inventory_store` SET `inventory_stok` = '2382979' WHERE `tbl_inventory_store`.`id` = 622;
PHPMyAdmin显示“0行受影响”,inventory_stok值不变,仍然是2382980。
有人知道为什么吗?我挣扎了好几天,请帮帮我。
2条答案
按热度按时间rhfm7lfc1#
FLOAT是近似数据类型,精度较低。
| 铸件(2382979为浮动)|
| - ------|
| 小行星238298|
fiddle
使用更精确的数据类型。DOUBLE或DECIMAL(首选)。
llmtgqce2#
假设在问题中有一个错字,表名float不是一个有用的数据类型,使用alter修改为int
然后更新
参见https://dbfiddle.uk/6a-Gl7Uv
做不到?那你就不能实现你的目标。