我正在使用Integration Services将数据从Excel文件加载到SQL Server表。当我尝试将存储为double (DT_R8)
的数字发送到数据库列,其中数据存储为varchar(50)
时,我发现了一个奇怪的四舍五入。
例如,考虑上面图像的第一行第一列中的数据。原始值为31.35,但作为字符串,它存储如下所示
在导出到SQL之前,我已经尝试使用Delivered Column转换来转换为字符串,我还添加了Round(x,5),但我得到了相同的结果。 如果我无法更改SQL列数据类型,我该如何解决这个问题呢?
答案 0 :(得分:0)
唯一可行的解决方案是将输入类型从double (DT_R8)
更改为currency [DT_CY]
。似乎在double (DT_R8)
上执行的舍入使得在解析以某种方式涉及导出过程时难以使用。