【问题标题】:Skip rows: Export data from SSIS into excel file跳过行:将数据从 SSIS 导出到 excel 文件
【发布时间】:2017-03-13 21:17:49
【问题描述】:
我正在尝试使用 SSIS 将数据从 SQL 服务器数据库导出到 excel 文件中。我希望数据从第 6 行插入,第 5 行有标题。
我可以通过编写 SQL 命令将 Excel 目标编辑器中的标题名称映射到 SQL 表标题:
SELECT * FROM [Sheet1$A5:EC5]
但是,当我执行包时,数据是从第二行插入的
如何从第 6 行开始插入?
感谢任何帮助解决这个问题。提前致谢!
【问题讨论】:
标签:
sql-server
excel
ssis
ssis-2008
【解决方案1】:
excel源码需要使用“OpenRowset”属性,进入excel源码的属性页面,将“OpenRowSet”设置为“$A6:D”,就可以解决你的问题了。
【解决方案2】:
将空白行添加到 SSIS 中 OLE DB 源中的数据集。我假设您数据库中的列名为 Header1、Header2 和 Header3。用此查询替换您的 OLE DB 源查询:
select ' ' as Header1, ' ' as Header2, ' ' as Header3
UNION ALL
select ' ', ' ', ' '
UNION ALL
select ' ', ' ', ' '
UNION ALL
select ' ', ' ', ' '
UNION ALL
select ' ', ' ', ' '
select Header1, Header2, Header3 from Your_SQL_SERVER_Tabl
如果您的列是其他类型,您可能需要将它们转换为 varchar。
【解决方案3】:
我在尝试从 SSIS 导出到 Excel 时遇到了类似的问题。通过从 ZappySys 购买“导出 Excel 任务”,我最终选择了第三方路线。它允许您指定开始的单元格偏移量。