gpt4 book ai didi

error-handling - 我如何停止SSIS脚本组件来处理数据

转载 作者:行者123 更新时间:2023-12-03 08:57:39 25 4
gpt4 key购买 nike

我正在使用脚本组件作为转换处理衣衫semi的分号分隔文件。

该组件能够处理数据并加载到oledb目标。但是,如果发现错误,则应停止进一步处理。当我使用try catch块时,组件不会失败,并继续处理直到最后。

有什么办法可以在不使组件/程序包失败的情况下进一步停止处理?

让我知道是否需要其他信息/细节?

样例代码:

str.split(";");

if(column[0] == "H")
{
col1=Column[3];
}

if(column[0] != "T")
{
try
{
Row.col1=Column[0];
Row.col2=Column[1];
.....
}
catch
{
update the variable to check if we have error in file.
}
}

感谢您的时间。

最佳答案

通常的想法是,您想使用try/catch块来确保数据处理本身不会中止。一旦知道您的脚本没有向引擎报告故障,就可以很简单地不调用AddRow()
伪码

foreach(line in fileReader)
{
try
{
// perform dangerous operations here
// Only add row if you have been able to parse current line
Output0Buffer.AddRow();
Output0Buffer.Col1 = parsedContent;
}
catch
{
// Signal that we should break out of the loop
// do not propagate the error
// You might want to do something though so you know you
// have an incomplete load
break;
}

}

如果您只是想跳过当前的坏行,则可以将 continue替换为上面的 break

C# loop - break vs. continue

关于error-handling - 我如何停止SSIS脚本组件来处理数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19036854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com