更新ms访问不起作用

时间:2016-02-20 16:26:21

标签: sql vba ms-access sql-update

当我在VBA MS Access命令中执行DoCmd.RunSQL SQL时,此更新不起作用:

UPDATE  T SET T.Quantità =  T.Quantità - C.SommaDiQuantità 
  FROM  [Scorta a magazzino] AS T INNER JOIN  (SELECT [Pazienti-Medicinali].[ID Medicinale], Sum([Pazienti-Medicinali].Quantità) AS SommaDiQuantità 
  FROM [Pazienti-Medicinali] GROUP BY [Pazienti-Medicinali].[ID Medicinale] )  AS C
  ON T.[ID Medicinale] = C.[ID Medicinale]

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

Access不允许您对分组数据执行更新。

通常你必须将其分为两步,首先将总和值加载到表中,然后链接到该表并执行更新。

如果你真的想要一个解决方法我认为你可以这样做:

UPDATE [Scorta a magazzino] AS T
SET T.Quantità =  T.Quantità - Nz(DSUM("Quantità", "[Pazienti-Medicinali]", "[ID Medicinale] = " & T.[ID Medicinale]), 0)