我的查询看起来像这样,我想这是因为使用了ConcatRelated()
,它连接了相关字段:
SELECT C.ID, ConcatRelated(["GameNames", "BaselineQuery", "CC.ID = " & [ID]) AS Games FROM BaselineQuery AS C GROUP BY C.ID
结果集如下所示:
ID GameNames
1 "A, "B", "C", D"
2 "A", "B"
3 "D", "E", "A", "B"
我要更新的游戏表
ID GameNames
1
2
3
其中GameNames当前为空白,我想使用查询的ID和表的ID填充GameNames,因此Games表中的1应该为“ A”,“ B”,“ C”,“ D” “。
我的UPDATE查询说:
UPDATE GAMES INNER JOIN CreatedQuery ON Games.ID = CreatedQuery.ID SET Games.GameNames = CreatedQuery.GameNames
不幸的是,Access告诉我该UPDATE查询不是可更新的查询,考虑到ID是Games表的PK,并且值显然相同,这对我现在来说意义不大。
任何帮助将不胜感激。
答案 0 :(得分:0)
您不能在更新查询中加入不可更新的查询。使用子查询也不起作用。整个记录集(所有基础查询和表)都需要可更新。
但是,您可以使用DLookUp
来解决此问题:
UPDATE GAMES
SET Games.GameNames = DLookUp("GameNames", "CreatedQuery", "ID =" & ID)