我希望有人可以帮助我。我正在从excel中提取并使用SSIS加载到ole数据库中。在它进入数据库之前,我必须过滤掉具有无效列和空列的行,并将这些有错误的行存储在另一个数据库中以防出错。
这是我的 TransactionRecord Excel 中的数据:
CustID TransactionDate TransactionTime AmountSpent
123 1/2/2011 10:30 $1
(null) 3/4/2012 (null) $8
789 3/4/2011 12:00 $7
698 (null) 11:23 $5
*(null) 表示 excel 中的空字段。
目前,这是我在 SSIS 所做的
TransactionRecord.xlsx ---> Conditional Split --(Case 1:filter rows with null)--> ErrorDB
--(默认输出)---> TransactionDB
我只能在以下条件下过滤掉具有空值的行:
ISNULL(CustID) || ISNULL(交易日期) || ISNULL(事务时间) || ISNULL(已花费金额)
但是,使用这种方法,我无法识别哪些是具有空值的列。我正在考虑在 ErrorDB 中有一个 ErrorMsg 列,它将说明哪些是需要更改的列。
错误数据库:
CustID TransactionDate TransactionTime AmountSpent ErrorMsg
null 3/4/2012 null $8 CustIDNull, TimeNull
698 null 11:23 $5 DateNull
我尝试使用“派生列”转换来添加新的 ErrorMsg 列,但是,我无法确定哪些列有错误。
有没有更好的方法来提取这些错误列并将它们存储在数据库中?
(无法发布图片,因为我是 stackoverflow 的新手,因此没有足够的声誉点)