基于 Access 中保存的 SELECT 查询的 UPDATE 查询?
Posted
技术标签:
【中文标题】基于 Access 中保存的 SELECT 查询的 UPDATE 查询?【英文标题】:UPDATE query based on a saved SELECT query in Access? 【发布时间】:2014-01-20 10:59:54 【问题描述】:使用 UPDATE 查询,是否可以引用存储的选择查询?
我想完成这样的事情:
UPDATE ... WHERE ... IN [MY_STORED_PROCEDURE]
【问题讨论】:
【参考方案1】:也许在这几行:
UPDATE ...
WHERE ID IN (SELECT ID FROM MyStoredProc)
根据您的设置,也可以加入。您可以将存储的查询添加到查询设计窗口,但您并不总是会得到可更新的查询,这通常取决于您的索引。
【讨论】:
怎么样?它如何依赖于索引?正如你所说,我让它工作了,但即使查询 SELECT id FROM MyStoredProc 工作正常,也没有任何更新。 使用连接的可更新查询可能取决于是否存在唯一索引。尝试使用表上的连接和保存查询创建查询,查看是否返回任何记录以检查是否有任何要更新的内容。 我明白了。但接缝更有可能在使用连接时遇到麻烦。你知道为什么'SELECT id FROM MyStoredProc'工作(返回3行)但如果我把它放入'UPDATE .. WHERE id IN(SELECT id FROM MyStoredProc)'(更新0行)?跨度> 当您使用实际 id 进行更新时会发生什么?即 ID IN (1,2,3) ?您确定有要更新的行吗? 也就是说,你确定id匹配吗?以上是关于基于 Access 中保存的 SELECT 查询的 UPDATE 查询?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 MS-Access 选择查询的结果保存在 C#.net 中的变量中?
Access select where 数据库查询 多表联合查询