在 Excel 中连接到 Access 查询都有哪些限制

Posted

技术标签:

【中文标题】在 Excel 中连接到 Access 查询都有哪些限制【英文标题】:What are the Limitations for Connecting to an Access Query in Excel在 Excel 中连接到 Access 查询有哪些限制 【发布时间】:2012-12-14 14:38:57 【问题描述】:

我有一个 Access 2007 数据库,其中包含许多表,其中一些相当大(超过 100,000 条记录);我创建了一个union query 以将一些相同类型的数据从多个表中提取到一个大型查询中,以进行数据透视表操作和报告。例如:

SELECT Language
FROM Table1
UNION ALL SELECT Language
FROM Table2
UNION ALL SELECT Language
FROM Table3;

这行得通。然而,我很快发现从 Excel 2007 连接到数据源时不会显示 union query。因此,我创建了第二个查询来引用 union query。像这样:

SELECT *
FROM [The Above Union Query];

此查询有效,并且最初可从 Excel 访问。时间过去了,我添加了更多数据。突然,当我从 Excel 连接到我的 Access 数据库时,引用联合的查询消失了。 MS Access 没有显示任何问题的迹象(数据显示在 Access 中),我的其他非联合查询显示在 Excel 2007 中......但不是引用联合的查询。

会发生什么?为什么消失了?

我注意到,如果我将 union query 中的一些引用表切换到一个较小的表(行数较少),查询会再次出现在 Excel 中。至少,我认为这就是区别所在。我真的无法解释为什么有些union queries 不会出现,有些会出现。

我很困惑,需要一些指导。谢谢。

【问题讨论】:

【参考方案1】:

如果您对 Union Query 而不是 Select Query 执行 Make Table Query 会怎样。然后只是让 Excel 引用了新表?这至少会告诉您是否超出 Excel 中的行限制,但这似乎不太可能,因为所有报告都表明它们在 Excel 2007 中比 Excel 2003 显着增加了行限制。您甚至可以在 Excel 中编写一个宏来告诉 Access在获取数据之前运行 Make Table。

【讨论】:

以上是关于在 Excel 中连接到 Access 查询都有哪些限制的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VB.net 中连接到本地网络上的 Access 数据库?

如何在 PHP7 中连接到 MS Access 数据库?

在 asp.net 和 Join 语句中连接到 Access 数据库

尝试在 C# 中连接到 Excel 电子表格

将 Excel 连接到 Access

无法从 Excel 中的 VBA 查询连接到 Access 数据库