我正在开发一个 SSIS 项目,以便在 SQL Server 数据库中导入调用行(Excel 文件)。
这是我的数据流:
我添加了一些查找以在导入过程之前检查行。第一个检查该行是否已经存在(防止重复,因为用户将导入文件拖放到指定文件夹中)。然后其他查找检查外键约束。此外,所有不匹配的行都被重定向到另一个数据库。所以我可以检查无效的行,然后一个审计包让我知道我的 NoMatchingRowsCall 表在输入期间是否发生了变化。
现在,我想在没有匹配的行中添加“错误消息”以检查“该行有什么问题?”。我想在每次查找后添加一个“派生列(没有匹配的输出)以添加错误消息。那怎么样?如何在“派生列”中添加文本内容?我应该使用包变量吗?
这是我想得到的:
ID | C1 | C2 | C3 | ERROR_MESSAGE
1 | .. | .. | .. | Row already exists
2 | .. | .. | .. | FK error for column C1
3 | .. | .. | .. | FK error for column C2
...
我想要一个“软”解决方案来跟踪失败的行而不停止包执行,并且能够在需要时通过更改失败的键来手动插入失败的行。