DECLARE @PATH NVARCHAR(1000) = N'\\MY-SERVER\C$\Folder\\'
DECLARE @TABLE NVARCHAR(50) = SUBSTRING(@FILENAME,0,CHARINDEX('.',@FILENAME))
DECLARE @SQL NVARCHAR(4000) =
N'IF OBJECT_ID(''dbo.' + @TABLE + ''' , ''U'') IS NOT NULL
DROP TABLE dbo.[' + @TABLE + ']
SELECT * INTO [' + @TABLE + ']
FROM OPENROWSET(''Microsoft.ACE.OLEDB.12.0''
,''Text; Database='+@PATH+';''
,''SELECT * FROM [' + @FILENAME + ']'')'
EXEC(@SQL)
今天,我在SSIS 2012中遇到了Microsoft.ACE.OLEDB.12.0驱动程序的问题。上面的脚本位于一个存储过程中,该存储过程根据存储过程所在的SSIS循环提供的当前文件动态地将..csv加载到数据库中。目录中有文件。
当直接在中运行时,存储过程将正确运行。
到今天为止,一切都很顺利。今天,我收到以下错误:
执行查询"EXEC dbo.CreateAndImportCSVs ?“失败,但有以下错误:“无法初始化OLE DB提供程序的数据源对象"Microsoft.ACE.OLEDB.12.0”用于链接服务器“(Null)”。可能的失败原因:查询出现问题、"ResultSet“属性未正确设置、参数未正确设置或连接未正确建立。
在这个问题上的任何帮助都将是伟大的!
编辑
因此,当我看到昨天安装在服务器上的windows更新时,我听到了警报铃声。安装了以下两个:
2007 (SP3) http://support.microsoft.com/kb/2526310
更新2007 Microsoft (KB967642) http://www.microsoft.com/downloads/details.aspx?FamilyId=E93AB1BE-ADE6-4FF8-8637-DBD3EBE3C5C5&displaylang=en
发布于 2017-12-06 09:06:48
这个问题自己解决了。还安装了更多更新,其中之一肯定修复了以前更新所带来的问题:
Microsoft 2010 ()64位版 https://support.microsoft.com/kb/4011188的更新
Microsoft 2010 ()64位版 http://support.microsoft.com/kb/2553347的更新
Microsoft 2010 ()64位版 https://support.microsoft.com/kb/2553338的安全更新
谢谢你在这方面的帮助!
发布于 2017-11-30 20:45:42
有许多事情需要尝试:
EXCEL
进程没有在后台运行在https://visakhm.blogspot.ae/2013/12/how-to-solve-microsoftaceoledb120-error.html阅读更多内容
另外,我在下面的链接中找到了一个有趣的建议解决方案,请看一看:
发布于 2021-04-15 15:36:20
为我解决这一问题的最后一个部分是将电子表格移动到Server能够访问的windows目录。我将电子表格移到一个新的子目录中,直接位于sql数据库所在的位置,问题就解决了。
https://stackoverflow.com/questions/47578546
复制相似问题