SSIS中列的数据类型转换

时间:2014-01-24 12:07:49

标签: ssis

我有一个管道分隔文件。 我想将此文件的记录存储在sql server表中。 我的表的模式已经确定。我想在将数据存储到表之前更改从文件中检索的列的数据类型。

我知道有一些方法,我们可以做到 数据转换工具,但这个组件的问题是如果列是空白的,我想将它存储到数字(18,0)列然后它不工作。 有什么建议我如何才能完成这项任务?

1 个答案:

答案 0 :(得分:0)

首先使用派生列。在派生列表达式中,检查输入值,如果其长度为零,或者内容为null,则将值设置为0(带小数类型)。 ELSE您可以使用所需的数值条件来检索输入列的值。

LEN([Column 1]) == 0 || ISNULL([Column 1]) ? 0 : (DT_NUMERIC,18,0)[Column 1]

请务必注意:如果您的所有输入数据都已为NULL(BLANK),那么您只需执行以下操作:

NULL(DT_NUMERIC, 18, 0)

在这里,我们开始,在您的情况下,数据转换组件不需要;)

最诚挚的问候, S.ANDOURA