1

我正在使用 Access 2007 通过 ODBC 连接到 MS SQL 数据库。我有一个名为“bases”的表,它看起来像这样:

Name     ID     Site
--------------------
Home      1      111
Work      2      111
Car       3      111
Castle    4      111
Store     1      222
Rest      2      222

现在棘手的部分是该表中唯一会知道的部分是站点。
我知道我可以进行 DLookup 并获取第一条记录 (Home,1) 并将它们存储在变量中。
但是我需要以某种方式获取下一条记录(工作,2)并将它们存储在其他变量中,然后循环遍历表,直到我在站点为 111 时将每条记录存储在变量中。
有任何想法吗?这样做的目的是将这些返回值保存为字符串,并最终将它们放入一个复杂的 Query 中。

4

2 回答 2

4

我有点生疏了,但是您应该可以进行类似的查询。

SELECT * FROM Bases WHERE Site = 111

将其返回到记录集,然后简单地遍历记录集,将项目添加到数组中以供存储和将来使用,具体取决于您的需要。

如果您不熟悉记录集,请查看这篇文章

于 2009-04-21T22:15:13.573 回答
0

正如onedaywhen在我之前所说,遍历结果集以构造第二个查询并不是最佳解决方案。

我不知道第二个(复杂的)查询是什么样子的,但你不能做这样的事情吗?

select * from OtherTable 
where Name in 
(
    select Name from Bases where Site = 111
)
于 2009-05-03T16:32:39.163 回答