SQL 访问链接服务器

标签 sql ms-access-2007

我正在尝试将链接服务器添加到 Access 数据库。我正在使用以下 SQL 代码来执行此操作。

exec sp_addlinkedserver 
@server = 'Test',
@provider = 'Microsoft.Jet.OLEDB.4.0',
@srvproduct = 'OLE DB Provider for Jet',
@datasrc = '\\srv\public$\CM Database\Data\sysConfig_dat.mdb'
go
EXEC sp_addlinkedsrvlogin Test, FALSE, Null, Admin, Null

但是当我运行这个...
select * from Test...tblProduct

我收到这个错误...

OLE DB provider 'Microsoft.Jet.OLEDB.4.0' cannot be used for distributed queries because the provider is configured to run in single-threaded apartment mode. what am i doing wrong?



我在 32 位系统上使用 SQL Server Management Studio 2008。

最佳答案

我想到了...

运行 SQL Server 的服务器是 64 位机器。典型的数据连接组件驱动程序不适用于这台机器(即安装 Microsoft.Jet.OleDB.4.0 作为提供程序的下载)。我必须下载 Access 2010 的组件,它有一个 64 位选项。

Download from here

这将安装 Microsoft.ACE.OLEDB.12.0 作为提供程序,我可以使用 BradBenning 在他的帖子中提到的 SQL 命令。

关于SQL 访问链接服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5873673/

相关文章:

php - 查询输出php代码

sql-server - MS Access 应用程序 - 将数据存储从 Access 转换为 SQL Server

mysql - SQL 查询 - 派生一个查询,该查询将找到其他查询获得的数字的平均值

sql - 为什么在 FROM 子句中改变表的顺序会使 SQL 执行时间不同?

ms-access - 如何通过匹配 ID 折叠 MS Access 表行

database - 从 Visual Basic 2010 到 MS ACCESS 2007 上的 INSERT INTO 命令出现语法错误

ms-access - VBA/Access 2007 中的 If [ComboBox] Is Null 语句

sql - DateDiff Access 查询返回 #Error

sql - 哈希联接出现在全文查询中 - SQL Server 2005

sql - 在2个表之间查询,合并结果。 PostgreSQL