SSIS导入Excel字符串类型以浮动SQL Server数据类型

时间:2012-09-04 09:20:43

标签: sql-server excel ssis trim ssis-data-types

我有一个excel文件,其中三列都是空的(从上到下),需要作为float或money导入到sql server表中。这些列的其他excel文件包含两位小数的值。由于我无法将空白单元格导入数字列,因此我在派生列组件中使用LEN(TRIM(F11)) > 1 ? (DT_R8)F11 : 0在db列中写入0。

但是现在当我导入其他带有值的Excel文件时,我得到8,4971E+20而不是849,71的值。

我可以更改表达式来处理这个或者是否还有其他内容?

另外,不是写'0'而是想在db float / money列中插入NULL。

希望你能帮我解决这个问题。

更新:让我以另一种方式尝试:

我在那些空的excel列中有一个if表达式,如果另一个表的值不是数字,它将不会在单元格内放置任何内容。

如果我可以使用“else”语句向每个单元格插入数值或者可能为NULL,我可以直接导入为float。我尝试在else语句中输入' 0 '或' NULL ',但我想因为它们周围的引号,它们将被解释为字符串。

有关于此的任何想法吗?

1 个答案:

答案 0 :(得分:0)

听起来你就像发布a similar question on MSDN的TonyC一样。