大量数据根据分类导出excel


数据库中有一张文件数据表(数据在10万到100万条),现在要通过程序将数据导出到excel表中,导出时候会根据数据表中的两个字段(年份和机构号)进行分类,如所有年份为2010和机构号为001的数据将分为同一类,对同一类的数据进行分块显示,假如有23条同类数据,即在excel表的第1行显示主标题然后接下来(2-11)这10行显示数据,然后第12行显示“第1页/共3页”(这里的共3页是针对该同类数据分页总页数)。第13继续显示主标题,然后接下来(14-23)这10行显示数据,然后第24行显示“第2页/共3页”以此下去。请问使用什么组件或方法能够比较快的导出数据(10万到100万条数据)?
导出数据如:
请输入图片描述
根据(归档年度和机构)分类

编码 c#

cover 12 years, 8 months ago

操作Excel有两种方式 :1、逐个单元格的操作,需引用:Interop.Excel.dll模块
2、以数据库的方式操作,使用OleDb
两种操作方式
数据库操作方式
建议使用OleDb。它可以连接到一般数据库,对数据库进行读写操作;同时,也可以连接到Excel,将Excel当做数据库使用sql语句进行读写操作,操作非常方便。在之前的项目中,我就是使用了OleDb来操作Excel,它的不足之处是,由于Excel并不是严格意义上的数据库,所以操作Excel时不支持Sql语句的delete命令对Excel进行删除操作。

OLE DB(OLEDB)是微软的战略性的通向不同的数据源的低级应用程序接口。OLE DB不仅包括微软资助的标准数据接口开放数据库连通性(ODBC)的结构化查询语言(SQL)能力,还具有面向其他非SQL数据类型的通路。 作为微软的组件对象模型(COM)的一种设计,OLE DB是一组读写数据的方法(在过去可能被称为渠道)。OLD DB中的对象主要包括数据源对象、阶段对象、命令对象和行组对象。

郑先生不是好人 answered 12 years, 8 months ago

Your Answer