SSMS与DTexec运行.dtsx包的版本兼容问题咨询
问题解决办法
一、SSMS安装在D盘时.dtsx无可用执行程序的解决
不用改回C盘安装,问题出在系统未识别到Integration Services的执行组件路径:
- 找到SQL Server 19对应的DTexec.exe路径,若SSMS装在D盘,路径一般为
D:\Program Files\Microsoft SQL Server\160\DTS\Binn(SQL Server 19对应版本号160) - 方案1:运行命令时直接使用完整路径调用,示例:
"D:\Program Files\Microsoft SQL Server\160\DTS\Binn\dtexec.exe" /f "d:\documents\sql\hits.dtsx" - 方案2:将上述路径添加到系统环境变量
PATH中,之后直接用dtexec命令即可调用对应版本的执行程序
二、DTexec报错0xC001700A的解决
错误原因是调用的DTexec.exe版本与.dtsx包的版本不匹配:你的包是SQL Server 19(包版本8)创建的,但实际调用了仅支持最高版本3的低版本DTexec,解决步骤:
- 优先使用SQL Server 19对应路径下的DTexec.exe(即上述160版本的路径),避免调用旧版本程序
- 检查系统环境变量
PATH,确保SQL Server 19的DTS\Binn路径排在旧版本SQL Server的对应路径之前,让系统优先调用高版本执行程序 - 打开SSMS,在包资源管理器右键目标.dtsx包,选择「属性」,确认「包格式版本」为8(对应SQL Server 19),若之前被保存为低版本,重新保存为SQL Server 19格式
- SSMS v18.12.1本身兼容SQL Server 19,无需额外加载SQL19的SSMS包,只要确保操作时连接的是SQL Server 19的Integration Services服务
内容的提问来源于stack exchange,提问作者Nor
相关产品推荐
相关产品推荐

