【发布时间】:2015-11-02 19:28:14
【问题描述】:
我有一个非常奇怪的问题,我想知道是否有人以前见过这个问题。 在我的数据流任务中,它会截断十几个表,然后用 CSV 文件的内容重新填充它们。
我有一个要导入的字段是一个浮点数。在 CSV 中,值为 7692.31,但当我导入它时,导入的字段是 7692.31005859375。我在 CSV 中的任何地方都看不到额外的 005859375。
我尝试手动截断表格,然后重新导入值,我可以看到它正在重新导入。我也检查过,其他平面文件导入都没有指向该表。另外,我尝试了一个只有这个数量的派生列,仍然得到小数。我试图将它四舍五入到小数点后 2 位,但我仍然得到小数点后 11 位。但是如果我将它四舍五入到 0,那么我就没有小数位(如预期的那样)。
所以,我有点难过。我的意思是,这些值来自哪里?它们对于每一行都不相同,有些行甚至没有这些小数位。他们为什么不四舍五入?我认为这可能是因为一次有太多的导入,但是当我删除所有其他的时,我遇到了同样的问题。制表符分隔文件中是否存在隐藏字符?
任何帮助将不胜感激。
埃里克
【问题讨论】:
-
您如何查看文件以说出它只有两位小数?如果您在 Excel 中打开它,Excel 倾向于更改数据的查看方式(即仅显示 2 位小数,或根据机器区域设置显示日期)。尝试在记事本等文本编辑器中打开文件,然后重新检查源文件中实际上没有那么多小数。
标签: sql-server csv ssis