使用 SSIS 将具有动态列名称的 Excel 中的数据移动到 table
Moving the data from Excel which have Dynamic column names to a table using SSIS
我正在创建一个 SSIS 包,我必须在其中将数据从 Excel 移动到 SQL 服务器中的 table。 Excel 文件就像数据流任务中的Source Assistant。
Excel 文件中的列数不会改变,但列名会动态改变。
例如,2017 年 excel 将如下所示:
SId Name Jan2017 Feb2017
1 name1 10 20
2 name2 30 40
2018年会是这样:
SId Name Jan2018 Feb2018
1 name1 50 60
2 name2 70 80
每年一次,我将 运行 此作业将数据从 excel 移动到数据库。我必须将此类数据电影化到 table 中,其中包含如下列。
当我在2017年运行这个工作时,数据应该像下面这样填写。
SId Name Jan Feb
1 name1 10 20
2 name2 30 40
当我在2018年运行这个工作时,数据应该像下面这样填写。
SId Name Jan Feb
1 name1 50 60
2 name2 70 80
我该如何处理这种数据。
解决方案概述
- 在excel连接中排除第一行的列名,使用sql命令作为数据访问模式并从第二行读取数据
Excel 源 -> 列中的别名列名
F1 F2 F3 F4
SId Name Jan Feb
详细解决方案
您可以按照我在 的回答进行操作,它正在解决一个非常相似的案例。
我正在创建一个 SSIS 包,我必须在其中将数据从 Excel 移动到 SQL 服务器中的 table。 Excel 文件就像数据流任务中的Source Assistant。
Excel 文件中的列数不会改变,但列名会动态改变。
例如,2017 年 excel 将如下所示:
SId Name Jan2017 Feb2017
1 name1 10 20
2 name2 30 40
2018年会是这样:
SId Name Jan2018 Feb2018
1 name1 50 60
2 name2 70 80
每年一次,我将 运行 此作业将数据从 excel 移动到数据库。我必须将此类数据电影化到 table 中,其中包含如下列。
当我在2017年运行这个工作时,数据应该像下面这样填写。
SId Name Jan Feb
1 name1 10 20
2 name2 30 40
当我在2018年运行这个工作时,数据应该像下面这样填写。
SId Name Jan Feb
1 name1 50 60
2 name2 70 80
我该如何处理这种数据。
解决方案概述
- 在excel连接中排除第一行的列名,使用sql命令作为数据访问模式并从第二行读取数据
Excel 源 -> 列中的别名列名
F1 F2 F3 F4 SId Name Jan Feb
详细解决方案
您可以按照我在