通过Web服务将数据从sql server读取到Excel工作表中

考虑你有一个现有的Excel工作表,它需要从sqlserver加载数据。 数据是规范化的,所以从表中读取不是一个选项。 顺便说一句,这是Excel 2010。

我试图通过存储过程提供数据,但由于我必须做一些数据转换 ,SP不是一个选项。

接下来的想法是通过networking服务提供数据。 我读过这篇文章,但是我不喜欢这个结果,因为工作表的内容是用.Net代码写的。 我更喜欢的解决scheme是某种数据提供者 ,可以直接在Excel表格中使用,类似于直接从表格读取数据。

有没有办法做到这一点?

编辑
由于第一个评论和答案。 考虑作为数据转换,例如从ticks( long )到DateTime的转换。 我必须在.net中执行,因为结果取决于目标时区。

有几种方法可以做到这一点,如果我正确地读你的问题:

创build一个新的Excel表单文档,使用新的Excel表单中“数据”选项卡下的“从其他来源”select,提供您的SQL详细信息,并连接到您需要显示在Excel表单中的数据。

您还可以使用与SQL Server一起安装的“导入和导出数据”工具。 这是一个相当简单的过程,该工具将引导您完成将数据导出到Excel工作表的必要步骤。

如果需要在应用程序代码中执行此操作,则可以使用自定义数据库视图,该视图将返回已处理的数据和自定义列,从代码调用此数据视图,检索数据行并写入Excel表单文件。 以下链接显示如何在C#中执行此操作: http : //csharp.net-informations.com/excel/csharp-excel-export.htm