ms 访问 - 当我在 vba 中选择查询时,列为空

Posted

技术标签:

【中文标题】ms 访问 - 当我在 vba 中选择查询时,列为空【英文标题】:ms access - when I select a query in vba, column is empty 【发布时间】:2012-02-17 16:07:54 【问题描述】:

当我在 vba 中编写一个 select 语句以从查询中获取一列时,它是空的。

我有一个由多个表连接的查询。

例如,如果我打电话给select query.specialcolumn from query where query.id=5,我会得到一个空白回复。但是,如果我在查询表中查看它,我会看到 ID=5 的数据和数据。

设计模式下的直接 SQL 也会产生空白。只有当我将查询作为一个整体查看时,我才能看到数据。

有什么想法吗?

【问题讨论】:

请问您是否也可以发布“查询”的 SQL,表面上这听起来很奇怪 【参考方案1】:

听起来您使用“查询”作为已保存查询的名称。而query是保留字,见Problem names and reserved words in Access。很难预测保留字作为对象名称何时会产生问题。而且我不相信名字是这里的问题。但我会在调查其他任何事情之前先排除它。

在 SQL 中引用它的任何地方都将查询括在方括号中。

select [query].specialcolumn from [query] where [query].id=5

方括号将通知数据库引擎查询是数据库对象而不是保留字。

【讨论】:

以上是关于ms 访问 - 当我在 vba 中选择查询时,列为空的主要内容,如果未能解决你的问题,请参考以下文章

使用 VBA 未打开表单时在访问中更新表单

MS Access VBA SQL查询调试选择案例

MS Word 中的 VBA 影响整个文档,而不仅仅是选择

Ms-访问,VBA 错误

如何使用 MySQl 的 ODBC 连接器在 MS Access 中的 VBA 中执行和查询?

MS Access 2010 vba 查询