Sql server DTExec.exe检查文件并验证失败

Sql server DTExec.exe检查文件并验证失败,sql-server,sql-server-2012,command-line-arguments,exit-code,dtexec,Sql Server,Sql Server 2012,Command Line Arguments,Exit Code,Dtexec,我正在尝试在批处理过程中使用DTExec.exe执行dtsx脚本。以下命令行脚本可以工作: "C:\Program Files\Microsoft SQL Server\130\DTS\Binn\DTExec.exe" -File "\\\\vm-to-somewhere\d$\Projects\test.dtsx" 但是,如果我在实际运行脚本之前尝试对test.dtsx文件运行检查/验证,它将失败,退出代码为6(这将转换为:实用程序在命令行中遇到语法或语义错误的内部错误) 这可能只是我忽略的

我正在尝试在批处理过程中使用DTExec.exe执行dtsx脚本。以下命令行脚本可以工作:

"C:\Program Files\Microsoft SQL Server\130\DTS\Binn\DTExec.exe" -File "\\\\vm-to-somewhere\d$\Projects\test.dtsx"
但是,如果我在实际运行脚本之前尝试对test.dtsx文件运行检查/验证,它将失败,退出代码为6(这将转换为:实用程序在命令行中遇到语法或语义错误的内部错误)

这可能只是我忽略的一个简单的错误,我想知道是否有反斜杠,但是第一个命令运行良好,所以没有意义

另外,如果有人能指出-CheckFile和-Validate之间的区别,这可能会帮助我决定在脚本中使用哪个。在执行之前,我只需要知道dtsx是否工作正常,因为它需要3小时才能运行,我更喜欢尽早发现

参考资料:

您遗漏了程序包名称前面的“-File”(或“-f”)选项

应该是

DTExec.exe -f "<package name with path>" -Validate
DTExec.exe-f”“-验证
请注意,包可能配置了延迟验证,因此-Validate选项不会验证延迟验证的项。有一些选项可以强制对延迟验证的项目进行验证,但这是一个单独的主题。

您在程序包名称前面遗漏了“-File”(或“-f”)选项

应该是

DTExec.exe -f "<package name with path>" -Validate
DTExec.exe-f”“-验证

请注意,包可能配置了延迟验证,因此-Validate选项不会验证延迟验证的项。有一些选项可以强制对延迟验证的项目进行验证,但这是一个单独的主题。

是的,它现在可以工作了,我知道这很愚蠢!我会调查延迟的验证,但谢谢你:)是的,它现在可以工作了,我知道这很愚蠢!我将研究延迟的验证,但感谢您:)
CheckFile
不会检查dtsx文件。它设置检查点文件的路径,您可以使用该文件重新启动包(这对于三小时的包可能很方便)。但只有在包中专门内置了检查点逻辑时,它才有用。我想你没有,所以不用麻烦了。您可以使用程序DTExecUI.exe从GUI为您构建命令行。如果包中存在实际的验证问题,那么它很可能会在执行的第一分钟内抛出。
CheckFile
不会检查dtsx文件。它设置检查点文件的路径,您可以使用该文件重新启动包(这对于三小时的包可能很方便)。但只有在包中专门内置了检查点逻辑时,它才有用。我想你没有,所以不用麻烦了。您可以使用程序DTExecUI.exe从GUI为您构建命令行。如果包中存在实际的验证问题,那么它很可能在执行的第一分钟内抛出。