【发布时间】:2011-11-15 21:37:01
【问题描述】:
我意识到这个问题涉及许多技术,但我只是在这里寻找高水平的贡献。
我目前的任务是从 SQL Server proc 导出到 Excel,然后通过 SQL 代理将 Excel 文件作为附件通过电子邮件发送。 SQL 代理作业必须每天运行。
我尝试过的:
- SQL -> Excel 使用 xp_cmdshell & bcp。这很好,但随后 excel 输出将非字母文本字段更改为数字。 (即电话号码)
- SQL OpenRowset。我无法克服由于 64 位 Win7 导致缺少 Jet 4.0 提供程序来使用 OpenRowset 的问题——据我所知。
- SSIS。在克服了动态文件名的困境后,当我从 SQL 到 Excel 的数据类型不匹配时,我就卡住了。 (一些 Unicode 到非 Unicode 问题)
- 我可以在 .NET 中编写导出过程,但是我不知道如何将它附加到 SQL 代理。
我想我最大的问题是,如果您要自己解决这个问题(我相信你们中的许多人必须这样做),我应该采用哪种技术路径?
注意:我几乎可以肯定我不应该在服务器上安装 Office
提前致谢。
【问题讨论】:
-
既然要转至 Excel,我们可以假设它的格式丰富,还是 CSV 就足够了? SQL 代理必须是发送电子邮件的机制,还是可以简单地用于安排 Extract-To-Excel-And-Email-Process?
标签: sql-server-2008 excel ssis