【发布时间】:2017-01-10 03:31:24
【问题描述】:
有人可以解释在不使用 SQL 代理的情况下自动化在 Visual Studio 2015 中构建的 SSIS 包的最佳方法吗?最好在任务计划程序中。我曾尝试使用较旧的 dtexec 技术,但一直收到版本错误消息。然后我尝试将 dtexec 作为批处理文件运行,但它找不到 dtexec 文件。任何帮助将不胜感激。
这是我尝试使用的脚本:
C:\Program Files\Microsoft SQL Server\110\DTS\Binn\dtexec /f "C:\Users\amoberg\Documents\Scripts\DailyCancel\DailyCancel\Package.dtsx"
谢谢
更新: 这是 CMD 错误:
C:>dtexec /F "C:\Scripts\DailyCancel\DailyCancel\Package.dtsx" Microsoft (R) SQL Server 执行包实用程序版本 11.0.6020.0 32 位版权所有 (C) Microsoft Corporation。保留所有权利。
开始时间:下午 12:42:33 错误:2017-01-05 12:42:33.92 代码: 0xC001700A 来源:包说明:版本号在 包无效。版本号不能大于 当前版本号。结束错误错误:2017-01-05 12:42:33.93
代码:0xC0016020 来源:包说明:包迁移 从版本 8 到版本 6 失败,错误 0xC001700A “版本 包中的号码无效。版本号不能 大于当前版本号。”。结束错误错误:2017-01-05 12:42:33.93 代码:0xC0010018 来源:包说明: 从节点加载值“8”时出错 “DTS:属性”。结束错误无法加载包 “C:\Scripts\DailyCancel\DailyCancel\Package.dtsx”因为错误 0xC0010014。描述:由于错误,包加载失败 0xC0010014 "发生了一个或多个错误。应该有更具体的 此错误之前的错误解释了错误的详细信息。 此消息用作遇到的函数的返回值 错误。”。当 CPackage::LoadFromXML 失败时会发生这种情况。来源: 包裹开始时间:12:42:33 PM 完成时间:12:42:33 PM 已用时间:0.094 秒
【问题讨论】:
-
路径中有空格...尝试使用像这样的引号 "C:\Program Files\Microsoft SQL Server\110\DTS\Binn\dtexec"
-
SSIS 是否已安装并处于活动状态?如果是,安装的是什么 SQL Server 版本?
-
是的,SSIS 已安装并处于活动状态。使用 SQL Server 2016 版。它在 Visual Studio 2015 中运行良好,但是当我尝试将其自动化时,我遇到了问题。我也尝试了 RGuggisberg 的建议,但还是不行……
-
我会尝试使用 powershell 来执行 t-sql 语句,也就是说,如果您至少要发布到 ssis 目录。
标签: sql-server batch-file visual-studio-2015 ssis