如何指定DTExec参数类型

时间:2014-02-21 16:04:13

标签: ssis ssis-2012

项目在Visual Studio中运行,并从Integration Services目录启动时运行。

当我从命令行使用参数文件运行它时,这两行:

/Par $Project::MaxRows;"250000"
/Par $Project::MaxRun;"45"

导致此错误:

Failed to execute IS server package because of error 0x80131904.    
Description: The data type of the input value is not compatible with the data type of the 'Int32'
Source: .Net SqlClient Data Provider

如果我将这些行删除,项目将使用默认值运行正常,默认值与指定的默认值相同。

有关如何调试此问题的任何想法?

更新: 通过将参数类型更改为String并将其转换为使用它们的int来解决此问题。但我仍然在努力解决“从SSIS提交而不是从命令行提交的工作”的事情。我想了解原因。

编辑:更改了标题以反映实际问题。

1 个答案:

答案 0 :(得分:1)

试试这个:

/Par "$Project::MaxRows(Int32)";250000
/Par "$Project::MaxRun(Int32)";45

在这里使用dtexec有一些很好的例子 - > http://technet.microsoft.com/en-us/library/hh231187.aspx