综和网上的几种方式看,从SQL导出数据到EXCEL主要分成四种方式;(根据个人的理解哈)
第一:以前我在前面的文章里也提到过就是直接通过HtmlText的方式给全部输出到EXCEL,代码如下;
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
![None.gif](/Images/OutliningIndicators/None.gif)
这种方式的缺点是导入到EXCE里的所以的信息不能编辑。
第二:就是最传统的通过COM组件通过对Interop.Excel.dll的引用实现导出数据。(这种方式具体在后面将。)
这种方式是消耗的性能比较大,当你插入数据的适合不得不一个单言格的填充数据,导致数据量大时,性能很差。但是这种方式有一种好处就是可以尽最大可能的操作EXCEL,比如:EXCEL的SHEET等。
第三:用OLEDB把EXCEL文件最为一个目的文件,实现数据的导出。(这种方式具体在后面将。)
这种方式比第二种的性能好些,因为我自己认为他是把EXCEL文件当作是一个数据库,一行当作一格表,他是一行一行的写SQL的插入语句,实现插入到EXCEL。但是这种方式也有格自命的缺点,就是你把数据插入EXCEL时不能包含EXCEL的”保留字“。比如:标题不能为NOTE等。
第四:通过DTS象SQL的备份还原一样在SQL里新建一个包,实现数据的导出。(这种方式具体在后面将。)这种方式我觉得性能好,但灵活性不强,因为你不能对数据按指定的要求导出。