MySQL -无法更改浮点字段的值

osh3o9ms  于 2023-03-17  发布在  Mysql
关注(0)|答案(2)|浏览(335)

我有一个类似这样的表结构:

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。
有人知道为什么吗?我挣扎了好几天,请帮帮我。

rhfm7lfc

rhfm7lfc1#

FLOAT是近似数据类型,精度较低。

SELECT CAST(2382979 AS FLOAT)

| 铸件(2382979为浮动)|
| - ------|
| 小行星238298|
fiddle
使用更精确的数据类型。DOUBLE或DECIMAL(首选)。

llmtgqce

llmtgqce2#

假设在问题中有一个错字,表名float不是一个有用的数据类型,使用alter修改为int

alter table <table>
modify column inventory_stok int;

然后更新
参见https://dbfiddle.uk/6a-Gl7Uv
做不到?那你就不能实现你的目标。

相关问题