数据库列出了项目及其存货数量。当有人购买商品时,我希望更新数据库中的库存数量。
无论以下减法 f_item_number = f_item_number - $mugAmount
,我的更新语句都不起作用。
如果我在数据库中有 200 个杯子。当我运行以下语句时,新的杯子数量随后被错误地列为 -1。而不是预期值199。这是为什么?
DB::update('UPDATE `shop_items` SET `f_item_number` = ? WHERE `f_item_name` = ?', array(`f_item_number` - $mugAmount, "mug"));
最佳答案
您不能在参数中传入数据库列文本。试试这个
DB::update('UPDATE `shop_items` SET `f_item_number` = `f_item_number` - ? WHERE `f_item_name` = ?', array($mugAmount, "mug"));
关于php - 股票的SQL语句中的减法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37471694/