【问题标题】:Users aren't able to run an Access 2007 app, after upgrading to Windows 10升级到 Windows 10 后,用户无法运行 Access 2007 应用
【发布时间】:2018-08-06 21:16:53
【问题描述】:

我们这里有一些 MS Access 2007 应用程序。我负责一个。通常,它永远不会出现任何问题。直到今天,我已经一年多没有收到这个应用程序用户的消息了。它是几年前由一个早已不复存在的人(我不知道是谁)写的,几乎没有文档。我们正在用 Windows 10 机器替换我们所有的 Windows 7 机器。一开始我以为是这个问题。但是,我的一位负责多个 Access 2007 应用程序的同事说,他的用户可以毫无问题地使用他们的 Access 应用程序。

回顾用户的错误,它简单地说,“ODBC - 调用失败”。无错误号;只是。所以,我的下一个想法是新的 Windows 10 机器上可能缺少 DSN。但是,我要求 PC 技术人员检查其中一台运行正常的 Windows 7 机器。他告诉我里面没有DSN。我不是 Access 开发人员,所以我问我的同事,谁做 Access 开发,他能发现什么。他发现这些表都是来自 SQL Server 数据库的链接表。看着他指的是什么(现在我知道该看哪里了),我明白了他的意思。与这些表中的每一个的连接都使用受信任的连接。它们都指向正确的 SQL 数据库服务器。那台服务器在那里。当我进入 SSMS 时,我可以很容易地看到表格中的数据。

那么,什么可能导致该错误发生,尤其是因为它看起来不需要 DSN 来连接到 SQL db?

【问题讨论】:

  • 您可能需要重新安装或重新创建您的 ODBC DSN(数据源)...在安装过程中可能会被清除。它们通常通过以下方式设置:(Windows 键)> 键入:odbc > "Set up data sources (ODBC)" 此站点上有多个资源,其他资源详细说明了如何在各种情况下进行设置。
  • 如果您尝试直接从导航窗口打开链接表会怎样?您收到更好的错误消息了吗?
  • 您是否也可能在 32 位和 64 位之间切换? Windows 10 应该没有问题,但 23 位和 64 位之间的 ODBC 连接和驱动程序不同。
  • @Andre,当我尝试从我的 Windows 10 机器打开链接表时,我收到以下错误消息:“ODBC -- 连接到 'SQL Server Native Client 10.0' failed”

标签: ms-access ms-access-2007


【解决方案1】:

我认为您的 Windows 10 是 64 位的。 并且您的 Access 可能是 32 位的。 重要的是要知道! 如果我的假设是正确的,您需要使用 32 位版本的 ODBC admin 来设置 DSN。

  • 32 位版本为 'C:\Windows\SysWOW64\odbc32.exe'
  • 64 位版本是 'C:\Windows\System32\odbc32.exe'

32 位 Access 将使用 32 位版本的 ODBC 管理员查找 DSN 设置,即使在 64 位操作系统上也是如此。如果您使用 64 位版本的 ODBC admin 设置 DSN,则 32 位 Access 将看不到它!

返回到 Windows 7 PC,并准确检查 DSN 的设置方式。 它是系统、用户还是文件 DSN? 为 SQL Server 安装了哪些驱动程序? (有多种不同的 ODBC 客户端可用于 SQL Server。) 在 Windows 10 上创建 DSN 时复制此 DSN 配置。

听起来您在 Windows 7 上使用“SQL Server Native Client”, 所以请确保在 Windows 10 上安装它。

见:Installing SQL Server Native Client

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-02
    • 1970-01-01
    • 2015-11-03
    • 1970-01-01
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    相关资源
    最近更新 更多