【发布时间】:2018-02-12 22:13:05
【问题描述】:
我在通过 SSIS 将大型数据集 (500k+) 导出到 Excel 时遇到问题,其中输出文件最终导出了 0 行。在说我不应该将那么多记录导出到 Excel 之前,让我声明我知道并且通常不会。会计不想要 CSV,也不愿意在 Excel 中打开 CSV。
使用 Visual Studio 2012 SSDT,这里是涉及的组件。
- 执行 SQL 任务 -> 创建带有标题的空文件
- 数据流任务->
- OLE DB 源 -> SQL 查询
- Excel 目的地
当程序包运行时,您可以看到从源流向目标的记录。包完成没有错误,但是当您打开文件时,它是空的。里面只有标题。
如果我选择前 1000 条记录并导出到 Excel,它会按预期工作。
我尝试过的一些事情:
- 在网络上导出到 Excel
- 在本地导出到 Excel
- 在网络和本地都以 CSV 格式导出到 Excel
- 使用具有“Excel 12.0”扩展属性的 Office Access Database Engine 12.0 导出到 Ole DB 目标。
- 尝试以不同用户身份运行
结果都一样。
谁能提供任何关于为什么会发生这种情况以及如何进行的见解?
【问题讨论】:
-
在提出第一个问题之前,建议阅读Tour Page,了解更多关于提出好问题、接受答案和其他网站规则的信息。还可以获得您的“知情”徽章。
-
尝试手动创建excel然后运行ssis包,结果一样吗?还可以尝试从目标 oakdome.com/programming/SSIS_DataTransform.php 创建表
-
如果是这样,请确保没有仍在运行的 Excel 进程。打开任务管理器并检查正在运行的
EXCEL进程 -
不太确定,会不会是数据错误造成的?
-
@PrabhatG 我找不到任何数据问题。
标签: sql-server excel ssis etl