存储过程中的 Openrowset 给出传输级错误

问题描述

GO
CREATE PROCEDURE sp_UploadExcel
    @Path VARCHAR(MAX) = NULL
AS
    BEGIN
        DECLARE @sql varchar(MAX);
        SET @sql = 'INSERT INTO TABLE SELECT * FROM OPENROWSET(''Microsoft.ACE.OLEDB.12.0'',''Excel 12.0; Database='+@Path+''',[Data$]);';
        EXEC (@sql);
    END
GO

sp_configure 'show advanced options',1;
RECONfigURE;
GO
sp_configure 'Ad Hoc distributed Queries',1;
RECONfigURE;
GO

EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0',N'AllowInProcess',1
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0',N'DynamicParameters',1

EXEC sp_UploadExcel @Path = 'path\file.xlsx'

获取

接收结果时发生传输级错误 服务器。 (提供者:共享内存提供者,错误:0 - 管道有 已结束。)

服务停止

如果需要这里是连接字符串:

Server=localhost\MSsqlSERVER02;Database=master;Trusted_Connection=True;

坚持了几个小时,任何信息将不胜感激

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)