我已经查看了这个错误,但似乎所有内容都与权限问题有关。
我有一个Access 2003数据库,其中包含以下更新查询。
UPDATE dbo_vdvStockStatus
INNER JOIN [#tblReport] ON dbo_vdvStockStatus.ItemKey = [#tblReport].MatItemKey
SET [#tblReport].QtyOnHand = [#tblReport].QtyOnHand-dbo_vdvStockStatus.QtyOnHand
WHERE (((dbo_vdvStockStatus.WhseID)="Q"));
dbo_vdvStockStatus是来自SQLServer的视图,#tblReport是Access数据库中的本地表。一切都适用于此。
所以我创建了一个查询副本,只是将视图更改为另一个视图。
UPDATE dbo_vdvInventoryStatus
INNER JOIN [#tblReport] ON dbo_vdvInventoryStatus.ItemKey = [#tblReport].MatItemKey
SET [#tblReport].QtyOnHand = [#tblReport].QtyOnHand-dbo_vdvInventoryStatus.QtyOnHand
WHERE (((dbo_vdvInventoryStatus.WhseBinID) like "*insp*"));
然而,这个给了我上面臭名昭着的错误。我尝试从参数中删除外卡,但它仍然给我错误。
由于#tblReport是同一个表(和数据库),我在第一个查询中成功更新,为什么第二个查询失败?