我的更新查询执行但不更新

时间:2010-05-27 09:39:27

标签: sql vb.net

我有这个更新查询。

UPDATE production_shr_01
SET    total_hours = hours, total_weight = weight, percentage = total_hours / 7893.3
WHERE  (status = 'X')

查询执行正常,但问题是当执行此查询时,它不会更新百分比字段。可能是什么问题?

2 个答案:

答案 0 :(得分:5)

status ='X'找不到任何行或(并且下一个更有可能),因为你在同一语句中更新total_hours,total_hours可能是0(或NULL),因此没有更新; 我建议您使用hours字段进行更新,如下所示:

UPDATE production_shr_01
SET    total_hours = hours, total_weight = weight, percentage = hours / 7893.3
WHERE  (status = 'X')

答案 1 :(得分:1)

percentage = total_hours / 7893.3子句中,将使用total_hours的旧值。 Percentage已更新,但旧值已更新。所以看起来它没有更新。请使用percentage = hours/ 7893.3