当在传输过程中转换数据时,我将所有被拒绝的(即失败的)转换移动到一个拒绝表中。但是,我只得到了第一个错误的条目:
示例源数据:
Name | Salary | Zipcode
------------------------
Paul | 12000 | 90210
Ringo| 5000 | 12345
Peter| hundred | London
Tina | 12345 | London对于第三行,我只得到一个错误,第二列是错误的,第三列没有列出,因此我的rejects表只有2个条目。
有没有办法获得每个错误的列表?
目前,我只是简单地使用rejects表并运行一个脚本,在它上面做我想做的事情,从而得到一个“适当的”日志文件,尽管我更喜欢在SSIS中有一些东西。
做这件事最好的方法是什么?
发布于 2019-10-16 23:40:17
我会考虑在异步脚本转换中进行更显式的验证和转换。
您将有两个输出,一个表示"OK",另一个表示"Error“。
当每一行进入时,您可以对两个字段执行验证方法(例如,从数据的外观来看,您可能正在执行类似Int32.TryParse (C#)的操作),并且对于遇到的每个无效字段,您可以将该字段写入" error“输出字段(如果您想这样查看,还可以编写整行,以及一条消息,指出哪个字段有错误)。
如果行中的数据是OK的,那么只需将该行的单个转换版本写入"OK“输出。
https://stackoverflow.com/questions/58413723
复制相似问题