陋室铭
永远也不要停下学习的脚步(大道至简至易)

posts - 2169,comments - 570,views - 413万

很大可能是SQL Server Management Studio(SSMS)版本与当前操作系统不兼容造成的,与数据库本身没有关系,这种情况基本无解,不过可以使用其他机器连本机数据库导入导出数据。

今天在使用SQL Server 2014 导“出数据”时,报了一个错,内容如下:


无法创建 SSIS 运行时对象。请验证 DTS.dll 是否可用及是否已注册。此向导无法继续而将终止。


无法将类型为“Microsoft.SqlServer.Dts.Runtime.Wrapper.PackageNeutralClass”的 COM 对象强制转换为接口类型“Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSContainer90”。此操作失败的原因是对 IID 为“{8BDFE892-E9D8-4D23-9739-DA807BCDC2AC}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 没有注册接口 (异常来自 HRESULT:0x80040155)。 (Microsoft.SqlServer.DTSRuntimeWrap)



原因

根据提示,是没有注册DTS.dll导致的。

解决方法

重新注册下DTS.dll

打开cmd命令行,执行命令regsvr32 "C:\Program Files\Microsoft SQL Server\120\DTS\Binn\DTS.dll"
注意:这个路径里面的120是对应SQL Server 2014版本的,其他版本根据实际修改。

如果没有报错,则注册成功,可以使用"导入/导出数据"了。

如果报错提示:

模块已加载,但对dllregisterServer的调用失败

同样情景:

无法创建 SSIS 数据流任务。请验证 DTSPipeline.dll 是否可用及是否已注册。此向导无法继续而将终止。 (SQL Server 导入和导出向导)

解决方案:同上

 

如果还不行,这把以上几种.dll文件或者对应文件夹中的所有.Dll都注册一遍

如果是在Windows10上面,注册DTSPipeline.dll可能并不能解决问题

posted on   宏宇  阅读(3226)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示