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



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

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

我可以改变表达方式来处理这个问题吗?或者还涉及到其他问题吗?

此外,我不想写"0",而是想在db float/memoney列中插入NULL。

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

更新:让我换一种方式试试:

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

如果我可以使用"else"语句在每个单元格中插入一个数值,或者可能是NULL,我可以直接作为float导入。我试着在else语句中放入"0"或"NULL",但我想由于它们周围有引号,它们将被解释为字符串。

对此有什么想法吗?

听起来你就是在MSDN上发布类似问题的同一个TonyC。

最新更新