【发布时间】:2018-04-20 01:27:22
【问题描述】:
我会尽量简化情况... 我与现场服务技术人员团队合作。我们之间共享很多工具和设备,因为有人不想在我们身上花钱。我正在使用 MS Access 开发一种方法来跟踪谁拥有大约 2000 多个项目中的哪些工具或特定设备。我已经把这个过程弄清楚到最后一步。它是这样的:
- Tech 打开一个表单,显示所有 2000 多个项目的当前位置/所有权,该表单从 SharePoint 列表中提取并插入 本地表。
- 技术对本地表进行更改。
- 技术完成后,Sharepoint 列表会从本地表中更新(这是我卡住的地方)。
我已按照我能理解的每个教程进行操作、演练和解决。但是每次我运行查询时,Access 都会询问我要更新的每个字段的“参数值”。请注意,我发现的所有内容都显示了如何更新表中的一个字段的示例。我正在尝试每行更新 5 个字段。当我让 Access 为此构建 SQL 时,它看起来像:
UPDATE Table1 INNER JOIN Table2
ON Table1.[Asset ID] = Table2.[Asset ID]
SET Table1.Department = Table2.[Department], Table1.[Cal Status] = Table2.
[Cal Status], Table1.[Return Date] = Table2.[Return Date], Table1.Comments =
Table2.[Comments], Table1.[Cal Due] = Table2.[Cal Due], Table1.Active =
Table2.[Active];
这些字段没有拼写错误,我已经检查并仔细检查了。
我已经看到一些关于 Access 如何在 UPDATE 方面出现问题的 cmets。但是我所做的一切都是自学的,在我理解这一点之前,我不能切换到其他东西。本周初刚开始接触Access和SQL,请耐心等待。
编辑
UPDATE Assets
SET Assets.Department = AssetsSharePoint.[Department],
Assets.[Cal Status] = AssetsSharePoint.[Cal Status],
Assets.[Return Date] = AssetsSharePoint.[Return Date],
Assets.Comments = AssetsSharePoint.[Comments],
Assets.[Cal Due] = AssetsSharePoint.[Cal Due],
Assets.Active = AssetsSharePoint.[Active]
FROM Assets
INNER JOIN AssetsSharePoint ON Assets.[Asset ID] = AssetsSharePoint.[Asset
ID];
这给了我一个“语法错误。缺少运算符”然后突出显示 FROM
编辑 2
如果我将其缩减为 1 个字段,则省略 FROM,并包含 WHERE 即可。我不想为此进行 5 个单独的查询。但我想我将不得不......
【问题讨论】:
-
我还打算建议更新一个字段,但这有点违背了你想要做的事情的目的。
-
这应该可以工作,特别是如果您在查询设计器中创建了查询。可能是你把代码简化了太多,能不能把原来的查询加进去?
-
@andre 第一次编辑的代码是直接复制粘贴。