版本:sql server 2016
insert into PPC.dbo.sheet1
select * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0 Xml;HDR=YES;IMEX=1;Database=xxxxx.xls;Extended Properties="Excel 12.0"',
'SELECT * FROM [sheet1$]')
以上代码手动执行成功了,但是用代理job自动执行就报错。

上图设置时报错:已以用户 NT SERVICE\SQLSERVERAGENT 的身份执行。 链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.ACE.OLEDB.12.0" 报错。提供程序未给出有关错误的任何信息。 [SQLSTATE 42000] (错误 7399) 无法初始化链接服务器“(null)”的 OLE DB 访问接口“Microsoft.ACE.OLEDB.12.0”的数据源对象。 [SQLSTATE 42000] (错误 7303). 该步骤失败。
当把上图选项都不选上的时候报错:已以用户 NT SERVICE\SQLSERVERAGENT 的身份执行。 无法创建链接服务器“(null)”的 OLE DB 访问接口“Microsoft.ACE.OLEDB.12.0”的实例。 [SQLSTATE 42000] (错误 7302). 该步骤失败。