ODBC—与“systemDSN”的连接失败

ODBC—与“systemDSN”的连接失败

我们有一个 Microsoft Access 2010 数据库(ACCDB)。

该 ACCDB 文件只是 Microsoft SQL Server 2008 数据库的前端。

对数据库的身份验证是通过 Windows 集成身份验证完成的。

我在工作站上创建了一个系统 DSN。在 ODBC 连接窗口中,我选择 APP1 作为服务器名称,然后从下拉列表中选择数据库(出于我们的目的,我们将其称为测试),选择完选项后,我测试了连接(测试成功)。

我已经进入 SQL 并确认用户有权使用其 Windows 用户名登录数据库。

当该用户(或其他用户)尝试登录时,他们会收到错误 ODBC--与“systemDSN”的连接失败。

我打开了 ACCDB 文件并打开了链接表管理器。它显示所有 dbo 都指向我在计算机上输入的相同 DSN 名称。

我是否遗漏了一些非常简单的东西?有什么想法吗?

我已经检查了工作站和 SQL 服务器上的应用程序和安全日志,没有看到任何登录尝试的内容。

更新 1:

如果我们在 32 位版本的 ODBC 中添加系统 dsn,我们会得到不同的错误。我们得到的错误是无效使用 Null,但每个字段中都有一些内容。

如果我们将 64 位版本 ODBC 中的系统 dsn 更改为用户 dsn,我们也会出现无效使用 Null 错误。

答案1

事实证明,设计数据库的人使用了三层登录。

有一个 Windows 集成登录,它映射到 SQL 登录。之后,还有另一个登录,它位于 SQL 中的一个表中。

相关内容