【问题标题】:MS Access hangs when comparing 2 link tables比较 2 个链接表时 MS Access 挂起
【发布时间】:2011-05-06 21:07:15
【问题描述】:

我在 MS Access 数据库中有 2 个链接表。其中一个链接表链接到 Sybase 数据库中的表,而另一个链接到 SQL Server 数据库。

表格结构相同,数据也相同,除了几行。

我尝试了“查找不匹配的行”查询向导来比较两个表并找到相同(和不同)的行数。但问题是这会导致 MS Access 挂起巨大的表(超过 1000 万行)。

是否可以调整任何设置以使 Access 不会挂起?我正在使用 ODBC 连接到 Sybase 和 SQL Server。

我注意到的另一件事是,当我右键单击 SQL Server 链接表并单击打开时,它会显示表中的所有行。当我对 Sybase 执行相同操作时,它会挂起,我必须通过任务管理器关闭 Access。

一些细节: Sybase 版本 - 12.5.3 SQL Server 版本 - 2008 R2 MS Access 版本 - 2003

【问题讨论】:

  • 您是否可以在 sql server 中执行此操作:support.microsoft.com/kb/280102?涉及 Access 似乎有点牵强。
  • 嗨 Remou,非常感谢这个建议。这看起来很完美。不幸的是,我无法访问安装 SQL Server 的服务器。但是如果使用Access根本不起作用,那么我将尝试获取访问权限并尝试链接服务器方法。
  • 是的,如果可能的话,使用链接服务器执行此操作 +1。否则,除了通过网络将所有数据拖到本地计算机并在您的小型 PC 上而不是大型强大的服务器上进行比较之外,Access 无能为力。我在这里做了一些假设,但我花了 很多 时间通过将这种查询从 Access 移动到适当的服务器来加快速度。

标签: sql-server ms-access compare sybase


【解决方案1】:

从表面上看,我想说的问题是访问试图在本地执行此查询,并且正在将大部分表拉到网络上。这就是你经常得到的神话,即访问总是这样做,而实际上它只在某些边缘事件上这样做。无论如何,您可以缩小要比较的数据范围吗?也许该表是产品销售列表,您可以一次只做一个产品线或类似的东西?

【讨论】:

  • 是的,同意。一件令人讨厌的事情要尝试:如果无论如何要手动将表向下拖动,您可能希望明确地执行此操作,即将查询分为两个步骤,一个是制作表的本地副本(也许将列缩小到最小必要),然后在本地比较两者。这不太可能挂起。但在其他条件相同的情况下,如果您可以管理它,最好尝试在其中一台服务器上执行此操作。
猜你喜欢
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多