访问链接表看不到新的 SQL 服务器表

Access Linked Tables can't see the new SQL Server tables

历史

在 1990 年代,我的前任为我的公司构建了一个 Access 数据库(实际上有四个)。突然间,下一位员工在 Windows Server 2003 上构建了一个 SQL Server 2008 Express,并将数据移动到那里。现在是 20 年代,我正在尝试升级到 Windows Server 2019 和 SQL Server 2019 Express。数据库已经升级到 Access 365。

这是我目前所做的:

现状

我从 SQL Server 2008 备份了数据库并将它们恢复到 SQL Server 2019。经过一些故障排除和重新配置后,我能够让我的 SQL Server Management Studio 到连接到 2019 数据库,它可以看到所有表。 Access 也可以连接到 2019 数据库。

问题

当我重新link 表时,它连接成功,但说它无法在数据库中找到表。 SQL Server Management Studio 可以很好地查看表格。桌子肯定在那里,名字也完全正确。我看不出这个错误的任何原因。

任何关于我下一步应该去哪里的建议都将不胜感激。

Access 要求在连接字符串或 DSN 中指定数据库,否则它会在 master 中查找表,应该没有。

如何做到这一点可能因驱动程序版本而略有不同,例如 ODBC Driver 17,您可以使用 将默认数据库更改为 选项:

或者,您可以 alter the user default database,但由于这是针对每个用户的,因此我不建议这样做。

或者,去DSNless。我强烈推荐 DSNless 连接,因为它们不依赖于正确配置的用户机器上的 DSN,因此允许在多台机器上使用数据库,而无需在单个机器上进行任何配置。