0

好的,这听起来可能有点奇怪,但这是我必须处理的。

我有一个特殊的安装程序,它将利用 powershell 对 access 2007 数据库进行查询

第一个表是程序列表。表中的一列是 prog_pre,它表示程序在安装之前必须安装一些东西

pre_req 表有一个名为 prog_id 的列,它是需要先安装另一个程序的特定程序的唯一 ID。它还有 prog_pre 列,它引用程序表中的唯一 ID。

我想要做的是当我执行类似的查询时

 Select * 
 from program_table 
 WHERE ID = '3'

程序 3 是 barware 有一个 pre_req 所以我希望它也循环通过 pre_req 表获取预需要程序的 ID 并将其添加到查询中。

有没有办法做到这一点,或者我只是坚持执行两个查询?

节目表

-------------------------------------------------- -------------
ID prog_name prog_version prog_pre
1 访问 2007 否
2 Acrobat 2012 专业版 否
3 酒具 2012 是
4 Fooware 2012 否
5 foomaker 2012 否
-------------------------------------------------- --------------

pre_req 表

-------------------------------------------------- --------------
id prog_id prog_pre
1 3 4
2 3 5
所需的结果将是一个数组,如下所示
3 酒具 2012 是
4 Fooware 2012 否
5 foomaker 2012 否

由于字段 prog_pre 是 yes,它还包括 pre_Req 表中列出的两个 prog_pre 程序 id

4

1 回答 1

0

在阅读了 X-Zero 的评论后

Blockquote 如果有最大级别数,您可以手动完成。否则,你会被程序代码困住。我已经看到提到 Access 不支持递归查询,这正是您想要的。- X-Zero

我做了一些进一步的研究,发现我想要的确实是一个递归查询。我还发现 X-Zero 是正确的。Access 不支持递归查询。

是否可以在 Access 中创建递归查询?

感谢您的帮助 X-Zero

于 2012-05-23T11:58:49.760 回答