使用SQL Server后端访问前端,适用于某些计算机,而不适用于其他计算机

时间:2018-03-01 23:01:40

标签: sql-server ms-access odbc

我正在将我公司的计时系统从一个旧的,缓慢的Access后端转移到一个快速而快速的SQL Server后端。我发现的是,虽然前端连接到我的机器或其他几个机器的后端没有问题,但在这里的大多数机器上,它似乎根本无法工作。

我使用CreateTableDef方法关联表格,找到hereAutoExec宏在启动时建立表。在我的机器上,使用Access 2016(版本1801,Build 9001.2171)运行Windows 7 Professional 64位,它打开时没有任何问题。商店中另一台相当不同的机器,运行Windows XP 32位和Access 2010数据库运行时引擎(这台机器没有完整版本的Office,只有运行时)也可以顺利运行。

办公室里的其他计算机,运行相同版本的Office,Windows 7或10,总是64位&打开.mdb文件时,Professional无法连接到SQL Server。

在一种情况下,Access会在吐出之前挂起最多30分钟

  

ODBC - 连接到'(此处为服务器名称)'失败。

我尝试在Access尝试建立连接时尝试运行服务器分析器,而我所看到的是服务器显然根本没有看到连接尝试。这个特定的机器还运行一个用VC#编写的单独的实用程序来连接和操作数据库,它可以毫无障碍地运行。只有在Access前端,我才会遇到问题。

所以,总结一下:

  • Microsoft SQL Server后端
  • 访问前端
  • 访问前端在某些计算机上连接没有问题,无法在其他计算机上连接。
  • VC#编写的单独实用程序在任何尝试的地方都可以正常工作,包括Access前端无法正常工作的机器。
  • 服务器上的Profiler跟踪不显示Access前端似乎无法正常工作的任何连接尝试。

我已经尝试安装Access数据库引擎,我尝试在一台计算机上安装SSMS(没有骰子),我已经安装了尽可能多的来自Microsoft的不同ODBC驱动程序,但是没有什么似乎有所作为。我倾向于认为问题不是驱动程序,而是某种与网络相关的问题,并且以某种方式特定于Access。

有什么想法吗?是否有一些我不知道的神秘软件要求?

1 个答案:

答案 0 :(得分:0)

所以,我找到了this个帖子,有人在第一次尝试连接时遇到问题。事实证明这是一个防火墙问题。通过固定SQL Server实例正在使用的端口,并在防火墙中明确打开它,所有连接问题显然都会消失。为什么它在某些计算机上没有问题,我仍然不知道,但在做出这个改变后,一切都按照它应该做的。