此版本的 SQL Server 不支持 Windows 登录

此版本的 SQL Server 不支持 Windows 登录

所有建议给出已经尝试过了。

在我们的 Azure Windows Server 2012 VM 中,我们有一个 Azure SQL 数据库。从 Azure 门户获取的 ODBC 连接字符串是:

Driver={ODBC Driver 13 for SQL Server};Server=tcp:databaseDomain.database.windows.net,1433;Database=DB_Name;Uid=user-id;Pwd=password;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;

此外,还有带有链接表的 MS Access 应用程序

本表格中的应用程序通过 DSN 连接到链接表。DSN 创建如下:

在 ODBC 数据源中:

ODBC 数据源

已选择 SQL Server Native Client 11.0

已选择 SQL Server Native Client 11.0

Azure SQL Server 连接已设置

Azure SQL Server 连接已设置

请注意,严禁使用 Windows 登录

请注意,严禁使用 Windows 登录

数据库正确弹出

数据库正确弹出

下一步,我们按照默认设置操作

下一步,我们按照默认设置操作

ODBC DSN 设置似乎成功

ODBC DSN 设置似乎成功

在 Access 应用程序的 VBA 代码中,我们也更新了上述连接字符串

在数据库工具 -> VBA 下

Set cn = New ADODB.Connection
cn.Open "Driver={ODBC Driver 13 for SQL Server};Server=tcp:databaseDomain.database.windows.net,1433;Database=DB_Name;Uid=user-id;Pwd=password;Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;"

当鼠标悬停在任何链接表上时,DSN 详细信息就会正确显示:

DSN 详细信息

但是,当尝试打开任何链接表时,都会引发以下错误:

此版本的 SQL Server 不支持 Windows 登录

注意,严格禁止使用 Windows 登录,那么问题是什么呢?

答案1

看起来我们遇到了同样的问题。对我来说,答案是将数据库迁移到 Azure 后需要重新链接我的表。

如果您使用 ODBC 连接在 Access 中创建数据库,则表格将使用来自上次修改和保存它们的系统的一串信息链接到 SQL 服务器。对于我的表格,它们多年来已在多个不同的系统上进行了修改,但所有系统都使用 Windows 集成登录。

我按住shift并打开我创建的基于 Access 的应用程序以便打开它,这样我就可以看到左侧的所有表格/查询/表单/等等。

然后,我切换到查看左上角菜单上的表格。然后,我右键单击一个表格(任何表格都可以)以打开“链接表管理器”。

在链接表管理器中,我单击“全选”,点击“确定”,然后打开向导。我用我的 ODBC 连接凭据创建了一个 DSN 文件,然后将每个表链接到该文件。之后,我可以正常打开所有内容。重新链接需要很长时间,但这是我能想到的唯一解决方法。

相关内容