我正在尝试创建一个将 csv 数据导出到 excel 文件的 SSIS 包。这个包将从 C# 中调用,将 csv 文件作为包的输入。我对 SSIS 很陌生,我已经能够使用相同的标题产生预期的结果。
我采用了以下方法 -
- 脚本任务 - 从 csv 标头创建脚本以创建临时表、批量插入、excel 表脚本。
- 执行 SQL 任务 - 在数据库中创建一个临时表
- 执行 SQL 任务 - 将 csv 数据批量插入表中
- 执行 SQL 任务 - 创建 Excel 文件
- 数据流任务 - OleDB 源到 Excel 目标
- 执行 SQL 任务 - 删除创建的临时表
我面临的挑战是我的 csv 可能有不同的标题(文本和标题数量可能不同)。我想要一个包来达到这个目的。
由于标题不同,上述步骤 5 中 OleDB 源到 Excel 目标之间的映射不适用于动态标题,并且在 excel 输出中给出了意外结果。有什么方法可以在运行时而不是在设计时确定这些映射。