2012-02-17 43 views
1

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

我有一个查询多个表加入。

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

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

任何想法?

+1

你是否能够发布“查询”的SQL以及请在面对它,这听起来很奇怪 – 2012-02-17 17:00:26

回答

3

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

将方括号中的查询括在SQL中引用的任何位置。

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

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