9

我有一台 32 位 Windows 7 机器。

我正在尝试通过在 SQL Server 2012 中创建链接服务器来访问 Excel 工作表。

以下是我的错误。

消息 7403,级别 16,状态 1,第 1 行 OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”尚未注册。

控制面板的程序和功能说 Microsoft Access Database Engine 2010 可用。

我该如何解决这个问题?

SQL 连接字符串和查询:

EXEC sp_addlinkedserver
@server = 'ExcelServer2',
@srvproduct = 'Excel', 
@provider = 'Microsoft.ACE.OLEDB.12.0',
@datasrc = 'D:\MyFTP\Jul19\FAILED\DCSDIM.xlsx',
@provstr = 'Excel 12.0;IMEX=1;HDR=YES;'

SELECT * FROM ExcelServer2...DCSDIM

提供者:

图像显示基于 Windows 的计算机上的 SQL 提供程序。

4

1 回答 1

1

从redis在服务器上安装64 位提供程序

使用上述提供程序调用 64 位可执行文件 SQL Server。

您在本地计算机上拥有哪个提供程序来执行 SSMS 并不重要。

Office11Office 2003的内部名称。

Office12 for Office 2007Office14 for Office 2010

安装 Office 2010 的 redis 包后,您需要更改代码,如下所示:

EXEC sp_addlinkedserver
@server = 'ExcelServer2',
@srvproduct = 'Excel', 
@provider = 'Microsoft.ACE.OLEDB.14.0',
@datasrc = 'D:\MyFTP\Jul19\FAILED\DCSDIM.xlsx',
@provstr = 'Excel 14.0;IMEX=1;HDR=YES;'

SELECT * FROM ExcelServer2...DCSDIM
于 2018-10-23T15:03:06.070 回答