我再次陷入同一个数据库。这次我创建了一个更新查询,当按下按钮时,该查询删除表中每个部分的1个。但是当一个部分已经为0时,它会变为-1。我怎样才能阻止这种情况发生?
我用SQL来实现这个目标,
UPDATE [ASM-00065 WIP]
SET [ASM-00065 WIP].[Current Stock] = [ASM-00065 WIP]![Current Stock]-1;
答案 0 :(得分:4)
我可能错误地理解了您的问题,但您是否要更新该表中该列的所有行,并从中减去1?在这种情况下,您可以使用:
UPDATE [ASM-00065 WIP]
SET [ASM-00065 WIP].[Current Stock] = [ASM-00065 WIP]![Current Stock]-1
WHERE [ASM-00065 WIP].[Current Stock] > 0
答案 1 :(得分:1)
MS-Access是否可以使用IIF()
UPDATE [ASM-00065 WIP]
SET [Current Stock]
= IIF([Current Stock]>0, [Current Stock]-1, [Current Stock]);
答案 2 :(得分:0)
您可以添加条件来过滤要更新的行:
UPDATE [ASM-00065 WIP] SET [ASM-00065 WIP].[Current Stock] = [ASM-00065 WIP]![Current Stock]-1 WHERE [ASM-00065 WIP]![Current Stock] > 0;