【发布时间】:2014-09-03 13:18:34
【问题描述】:
我对 Access 还很陌生,所以这让我有点抓狂。
我正在创建一个库存数据库,并希望计算库存商品的数量以更新订购单。收到的物品被分配了一个订单代码,我想计算在主表中找到的每个订单代码的实例数。我有一个生成表查询,可以很好地做到这一点:
SELECT PrimerList.PrimerName
, First(Primer_Master.FR) AS FR
, Primer_Master.OrderCode
, Count(Primer_Master.OrderCode) AS InStock
INTO PrimerOrder
FROM PrimerList
LEFT JOIN Primer_Master ON PrimerList.ID = Primer_Master.PrimerName
GROUP BY PrimerList.PrimerName
, Primer_Master.OrderCode
, Primer_Master.PrimerName
, Primer_Master.FR
, Primer_Master.Finished
HAVING ((([Primer_Master]![Finished])=No));
我想使用 PrimerOrder 更新一个订单列表表 PrimerOrderList,它包含所有不同的可能订单代码,更新具有匹配 OrderCode 的记录的 InStock 值:
UPDATE PrimerOrderList
SET PrimerOrderList.InStock = PrimerOrder.InStock
WHERE (((PrimerOrderList.OrderCode)=[PrimerOrder].[OrderCode]));
但是,当我尝试运行它时,我会弹出参数框,要求输入 PrimerOrder.OrderCode 和 PrimerOrderList.OrderCode。即使我为每个输入一个有效值,我也会遇到类型转换失败。我已经检查了两个表的数据类型,但没有看到类型转换失败的原因 - 两者都设置为文本。
任何见解将不胜感激!提前致谢!
【问题讨论】:
标签: sql type-conversion ms-access-2007