SSIS Excel数据导入 - 行中的混合数据类型

时间:2016-12-12 15:51:29

标签: sql-server excel ssis sqldatatypes

我正在尝试使用SSIS pkg导入Excel数据,但它正在更改数据类型并转换为其他一些带小数的格式。

我从设定范围中提取数据

实施例: 范围A5:AB20

我的数据栏A5(M)= 1.2

SSIS导入类似120000.001237

的内容

我是SSIS导入A5 = 1.2

我试过这个但是失败了......

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\ABCDPrograms.xlsx;Extended Properties="EXCEL 12.0 XML;HDR=YES;IMEX=1";

原始数据是从某些遗留系统导入的,我无法在那里进行更改。

请直接。谢谢

1 个答案:

答案 0 :(得分:1)

您需要在Excel电子表格和数据库之间的数据流任务中使用派生列转换:

Excel文件,我知道你说你的电子表格显示为1.2,但是我看不到单元格中的内容,所以看起来更大的值就是单元格中的内容:

enter image description here

派生转换任务,将值(除以100000)舍入到1位小数,替换列值:

enter image description here

产生的数据库条目,此列的数据类型设置为DECIMAL(8,1)或者您需要的前导数字是多少:

enter image description here

希望有所帮助