操作必须使用可更新的查询!? - 不是权限 - CrossTab !! ?? [英] Operation Must Use An Updateable Query!? - NOT Permissions - CrossTab!!??

查看:59
本文介绍了操作必须使用可更新的查询!? - 不是权限 - CrossTab !! ??的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

运行访问2k; mdb w /链接表到另一个mdb

(前/后端);


试图运行一个更新表FROM的信息来自

交叉表查询。

我没有尝试更新交叉表查询本身 - 只使用

信息来更新完美可更新的表! br />

为什么----当我明显没有

权限问题或更新表时我会尝试这个错误到
更新!?!?!?!? (我可以在没有XT的情况下清楚地更新它)


如果我不能使用这些信息那么----好的是交叉表查询

除了报告以外的其他内容?!?!?


这是我的查询(XT表是我的交叉表):

我猜我可能需要使用子查询来解决这个问题,

但我不知道怎么做,也不知道为什么我应该走这条路...... />

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON

Q_answers_XT.id = T_final_answers.id

SET T_final_answers.q = [Q_answers_XT]![q ],T_final_answers.a =

[Q_answers_XT]![a];

任何帮助表示赞赏...

TIA

running access 2k; mdb w/ linked tables to another mdb
(front/back-end);

trying to run a query that updates a table FROM information from a
crosstab query.
I AM NOTT trying to update the crosstab query itself - only use
information FROM it to update a perfectly updatable table!

Why the ---- would I get this error, when there are clearly NO
permission issues, or issues in updating the table I''m trying to
update!?!?!?!? (I can clearly update it without the XT)

What the ---- good is a crosstab query, if I can''t USE the information
within it for something other than reporting?!?!?

Here''s my query (the "XT" table is my crosstab):
I''m guessing that maybe I need to use a sub-query to work around this,
but am not sure how, nor why I should have to go this route....

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q], T_final_answers.a =
[Q_answers_XT]![a];
any help appreciated...
TIA

推荐答案

2006年5月31日06:55:25 -0700,Bob < bo ************* @ gmail.com>

写道:


是的,这是非常的烦人。访问显然太愚蠢了

明白这一点。我们将看到Access 12,但我的猜测是98%

的努力进入了一个新的用户界面,并且很少进行改进

就像这个。我的解决方法是将交叉表

的结果写入临时状态。表,然后用那个表来完成剩下的

的更新。


-Tom。

On 31 May 2006 06:55:25 -0700, "Bob" <bo*************@gmail.com>
wrote:

Yes, that''s very annoying. Access apparently is too stupid to
understand this. We''ll see about Access 12, but my guess is that 98%
of the effort went into a new UI, and very little into improvements
like this one. My workaround is to write the results of the crosstab
to a "temporary" table, and then use that table to complete the rest
of the update.

-Tom.

运行访问2k; mdb w /链接表到另一个mdb
(前端/后端);

尝试运行一个查询来更新来自交叉表查询的表FROM信息。我没有尝试更新交叉表查询本身 - 只使用它的信息来更新完全可更新的表格!

为什么----我会得到这个错误,当时显然没有
权限问题,或更新表的问题我正在尝试更新!?!?!?!? (我可以在没有XT的情况下清楚地更新它)

如果我不能在其中使用其他信息而不是报告,那么交叉表查询是好的---- ?!?!?

这是我的查询(XT表是我的交叉表):
我猜我可能需要使用子查询解决这个问题,
但我不知道怎么做,也不知道为什么我要走这条路......

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q],T_final_answers.a =
[Q_answers_XT]![a];

任何帮助表示感谢...
TIA
running access 2k; mdb w/ linked tables to another mdb
(front/back-end);

trying to run a query that updates a table FROM information from a
crosstab query.
I AM NOTT trying to update the crosstab query itself - only use
information FROM it to update a perfectly updatable table!

Why the ---- would I get this error, when there are clearly NO
permission issues, or issues in updating the table I''m trying to
update!?!?!?!? (I can clearly update it without the XT)

What the ---- good is a crosstab query, if I can''t USE the information
within it for something other than reporting?!?!?

Here''s my query (the "XT" table is my crosstab):
I''m guessing that maybe I need to use a sub-query to work around this,
but am not sure how, nor why I should have to go this route....

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q], T_final_answers.a =
[Q_answers_XT]![a];
any help appreciated...
TIA






按设计你不能在更新查询中使用交叉表或任何聚合查询

(除了作为where子句中的子查询)。


您可能不得不求助于使用交叉表来创建(或填充)

临时工作台。然后你可以在查询中使用工作表来更新你在T_Final_Answers中的字段。


您可以使用VBA函数 - DLookup - 来在交叉表中找到

中的值,并在更新查询中使用它。类似于UNTESTED查询后的




UPDATE T_Final_Answers

SET q = DLookup(" q"," q_answers_xt" ;,"" id ="& T_final_answers.Id)

WHERE ID in(SELECT ID FROM q_answers_Xt)


" Bob" <博************* @ gmail.com>在消息中写道

news:11 ********************** @ i40g2000cwc.googlegr oups.com ...
By design you can''t use a crosstab or any aggregate query in an update query
(except as a subquery in the where clause).

You may have to resort to using the cross-tab to create (or populate) a
temporary work table. Then you can use the work table in a query to update
your fields in T_Final_Answers.

You might be able to use the VBA function - DLookup - to find the value in
the crosstab and use that in your update query. Something like the
following UNTESTED query.

UPDATE T_Final_Answers
SET q = DLookup("q","q_answers_xt","id=" & T_final_answers.Id)
WHERE ID in (SELECT ID FROM q_answers_Xt)

"Bob" <bo*************@gmail.com> wrote in message
news:11**********************@i40g2000cwc.googlegr oups.com...
运行访问2k; mdb w /链接表到另一个mdb
(前端/后端);

尝试运行一个查询来更新来自交叉表查询的表FROM信息。我没有尝试更新交叉表查询本身 - 只使用它的信息来更新完全可更新的表格!

为什么----我会得到这个错误,当时显然没有
权限问题,或更新表的问题我正在尝试更新!?!?!?!? (我可以在没有XT的情况下清楚地更新它)

如果我不能在其中使用其他信息而不是报告,那么交叉表查询是好的---- ?!?!?

这是我的查询(XT表是我的交叉表):
我猜我可能需要使用子查询解决这个问题,
但我不知道怎么做,也不知道为什么我要走这条路......

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q],T_final_answers.a =
[Q_answers_XT]![a];

任何帮助表示感谢...
TIA
running access 2k; mdb w/ linked tables to another mdb
(front/back-end);

trying to run a query that updates a table FROM information from a
crosstab query.
I AM NOTT trying to update the crosstab query itself - only use
information FROM it to update a perfectly updatable table!

Why the ---- would I get this error, when there are clearly NO
permission issues, or issues in updating the table I''m trying to
update!?!?!?!? (I can clearly update it without the XT)

What the ---- good is a crosstab query, if I can''t USE the information
within it for something other than reporting?!?!?

Here''s my query (the "XT" table is my crosstab):
I''m guessing that maybe I need to use a sub-query to work around this,
but am not sure how, nor why I should have to go this route....

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q], T_final_answers.a =
[Q_answers_XT]![a];
any help appreciated...
TIA



Tom,&约翰;


我非常感谢你的回复。


John;我会尝试你的建议,看看它是怎么回事 - 我真的不会这样做b $ b想要每次都需要创建临时表 -

只是变成了压实的噩梦。


这就像微软所做的一样,已经死了。并且

他们确实做得很多。不能告诉你他们多少次他们的特价

已经勾选了我。


当人们要停止支付微软的时候BS

营销改进,并强迫他们写好代码? (那是

当然,因​​为我知道这绝不会发生 - 其他

公司跟着微软的例子,因为人们很傻,或者

无知足以让它发生。)


好​​的,好的 - 关闭通风口,我已经把蒸汽吹到了空的真空中

。微软客户意识...... :-)


T& J - 再次,我非常感谢您的建议;显然,如果约翰的建议失败,我别无选择,只能创建一个临时的

表 - 再次和&再次&再次&再次,再次紧凑&再次&

再次.....; - O


TX - Bob


John Spencer写道:
Tom, & John;

I''m very appreciative for your replies.

John; I''ll try your suggestion, and see how it goes - I REALLY don''t
want to have to create a temp table everytime this needs to happen -
just becomes a compaction nightmare.

This is about as brain-dead, as anything microsoft has ever done; and
they''ve sure done plenty. Can''t tell you how many times their idiosy
has ticked me off.

When the ---- are people going to STOP paying microsoft for BS
marketing improvements, and force them to write good code? (that is
retorical, of course, because I know this will never happen - other
companies follow microsoft''s example because people are stupid, or
ignorant enough to let it happen).

ok, ok - close the vents, I''m done blowing steam into the empty vacuum
of microsoft customer awareness...... :-)

T & J - again, I''m very appreciative for your suggestions; clearly, if
John''s suggestion fails, I have no choice but to create a temporary
table - again & again & again & again, and compact again & again &
again .....;-O

TX - Bob

John Spencer wrote:
根据设计,您不能在更新查询中使用交叉表或任何聚合查询
(除了作为where子句中的子查询)。

您可能不得不求助于使用交叉表来创建(或填充)
临时工作表。然后你可以在查询中使用工作表来更新你在T_Final_Answers中的字段。

你或许可以使用VBA函数 - DLookup - 来找到
中的值。交叉表并在更新查询中使用它。类似
后面的UNTESTED查询。

UPDATE T_Final_Answers
SET q = DLookup(" q"," q_answers_xt"," id ="& T_final_answers。 Id)
WHERE ID in(SELECT ID FROM q_answers_Xt)

" Bob" <博************* @ gmail.com>在消息中写道
新闻:11 ********************** @ i40g2000cwc.googlegr oups.com ...
By design you can''t use a crosstab or any aggregate query in an update query
(except as a subquery in the where clause).

You may have to resort to using the cross-tab to create (or populate) a
temporary work table. Then you can use the work table in a query to update
your fields in T_Final_Answers.

You might be able to use the VBA function - DLookup - to find the value in
the crosstab and use that in your update query. Something like the
following UNTESTED query.

UPDATE T_Final_Answers
SET q = DLookup("q","q_answers_xt","id=" & T_final_answers.Id)
WHERE ID in (SELECT ID FROM q_answers_Xt)

"Bob" <bo*************@gmail.com> wrote in message
news:11**********************@i40g2000cwc.googlegr oups.com...
运行访问2k; mdb w /链接表到另一个mdb
(前端/后端);

尝试运行一个查询来更新来自交叉表查询的表FROM信息。我没有尝试更新交叉表查询本身 - 只使用它的信息来更新完全可更新的表格!

为什么----我会得到这个错误,当时显然没有
权限问题,或更新表的问题我正在尝试更新!?!?!?!? (我可以在没有XT的情况下清楚地更新它)

如果我不能在其中使用其他信息而不是报告,那么交叉表查询是好的---- ?!?!?

这是我的查询(XT表是我的交叉表):
我猜我可能需要使用子查询解决这个问题,
但我不知道怎么做,也不知道为什么我要走这条路......

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q],T_final_answers.a =
[Q_answers_XT]![a];

任何帮助表示感谢...
TIA
running access 2k; mdb w/ linked tables to another mdb
(front/back-end);

trying to run a query that updates a table FROM information from a
crosstab query.
I AM NOTT trying to update the crosstab query itself - only use
information FROM it to update a perfectly updatable table!

Why the ---- would I get this error, when there are clearly NO
permission issues, or issues in updating the table I''m trying to
update!?!?!?!? (I can clearly update it without the XT)

What the ---- good is a crosstab query, if I can''t USE the information
within it for something other than reporting?!?!?

Here''s my query (the "XT" table is my crosstab):
I''m guessing that maybe I need to use a sub-query to work around this,
but am not sure how, nor why I should have to go this route....

UPDATE Q_answers_XT LEFT JOIN T_final_answers ON
Q_answers_XT.id = T_final_answers.id
SET T_final_answers.q = [Q_answers_XT]![q], T_final_answers.a =
[Q_answers_XT]![a];
any help appreciated...
TIA






这篇关于操作必须使用可更新的查询!? - 不是权限 - CrossTab !! ??的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆