【发布时间】:2013-06-10 12:28:53
【问题描述】:
我正在编写一些关于如何通过 ODBC 将 Access 连接到 SQL 的文档。老实说,当谈到驱动程序时,我总是选择“11.0”,只是因为。但我想知道是什么决定了我“应该”使用的驱动程序?
SQL Server 的版本是否决定了这一点?而且我假设“用户”的计算机没有我在这里看到的所有驱动程序,所以有人可以澄清选择正确驱动程序的规则吗?
【问题讨论】:
标签: sql-server ms-access odbc driver
我正在编写一些关于如何通过 ODBC 将 Access 连接到 SQL 的文档。老实说,当谈到驱动程序时,我总是选择“11.0”,只是因为。但我想知道是什么决定了我“应该”使用的驱动程序?
SQL Server 的版本是否决定了这一点?而且我假设“用户”的计算机没有我在这里看到的所有驱动程序,所以有人可以澄清选择正确驱动程序的规则吗?
【问题讨论】:
标签: sql-server ms-access odbc driver
根据位于here 的博客文章,
SQL Native Client 是在 Microsoft SQL Server 2005 中引入的,以提供超出 Microsoft 数据访问组件 (MDAC) 提供的新功能。
接下来列出了一些新功能:
SQL Native Client 可用于创建新应用程序或增强需要利用新 SQL Server 2005 功能的现有应用程序,例如多活动结果集 (MARS)、用户定义的数据类型 (UDT)、查询通知、快照隔离和 XML 数据类型支持。
我认为 Access 中的 SQL Server 链接表不太可能利用任何这些较新的 SQL Server 功能,原因有两个:
从 Access 到 SQL Server 的 ODBC 链接可能保持相当通用,以支持到旧版本 SQL Server 的链接,并且
据我了解,Access 链接表上的所有操作首先由 ACE/Jet 数据库引擎处理,该引擎又将请求发送到 ODBC 驱动程序。我怀疑如果查询涉及任何“花哨的东西”,那么 ACE/Jet 会处理它并通过 ODBC 向 SQL Server 发送相对常规的请求。
因此,由于古老的“SQL Server”(MDAC) ODBC 驱动程序随 Windows 一起提供,并且可以在任何机器上使用,那么这将是最直接的解决方案。我怀疑使用较新的“本地客户端”驱动程序之一会伤害,但我也怀疑在这种情况下它会帮助很多(如果有的话)。 p>
【讨论】: