1.首先须要有一个NPOI

2.接下来上代码

 private void button1_Click(object sender, EventArgs e)
{
//1.通过Ado.net读取数据
string sql = "SELECT * FROM ASRS_F1";
using (SqlDataReader reader = SqlHelper.ExecuteReader(sql, CommandType.Text))
{
//如果读到数据
if (reader.HasRows)
{
IWorkbook wk = new HSSFWorkbook();
ISheet sheet = wk.CreateSheet("ASRS_F1"); #region 创建第一行,设置列名
//--------------------------------------------------
//创建第一行,第一行表示列名
IRow rowHead = sheet.CreateRow();
//循环查询出的每一列
for (int col = ; col < reader.FieldCount; col++)
{
rowHead.CreateCell(col).SetCellValue(reader.GetName(col));
}
//--------------------------------------------------
#endregion int rindex = ;
//下面是创建数据行
while (reader.Read())
{
//ID, Position, AName, ACode, AState, ABatch, ADateTime, BName, BCode, BState, BBatch, BDateTime, IsMoving, IsType
IRow currentRow = sheet.CreateRow(rindex);
rindex++;
int Id = reader.GetInt32();
string Position = reader.GetString();
string AName = reader.GetString();
string ACode = reader.GetString();
string AState = reader.GetString();
string ABatch =reader.IsDBNull()?null: reader.GetString();
DateTime? lockDate = reader.IsDBNull() ? null : (DateTime?)reader.GetDateTime();
string BName = reader.GetString();
string BCode = reader.GetString();
string BState = reader.GetString();
string BBatch = reader.IsDBNull()?null:reader.GetString();
DateTime? lockDates = reader.IsDBNull() ? null : (DateTime?)reader.GetDateTime();
string IsMoving = reader.GetString();
string IsType = reader.GetString(); currentRow.CreateCell().SetCellValue(Id);
currentRow.CreateCell().SetCellValue(Position);
currentRow.CreateCell().SetCellValue(AName);
currentRow.CreateCell().SetCellValue(ACode);
currentRow.CreateCell().SetCellValue(AState);
currentRow.CreateCell().SetCellValue(ABatch);
if (lockDate == null)
{
//如果是null值,那么就像excel写入一个单元格,这个单元格的类型就是Blank
currentRow.CreateCell().SetCellType(CellType.BLANK);
}
else
{ //创建一个单元格
ICell cellLockDate = currentRow.CreateCell(); //创建一个单元格样式
ICellStyle cellStyle = wk.CreateCellStyle();
cellStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("m/d/yy h:mm");
//设置当前单元格应用cellStyle样式
cellLockDate.CellStyle = cellStyle; cellLockDate.SetCellValue((DateTime)lockDate);
}
currentRow.CreateCell().SetCellValue(BName);
currentRow.CreateCell().SetCellValue(BCode);
currentRow.CreateCell().SetCellValue(BState);
currentRow.CreateCell().SetCellValue(BBatch); if (lockDates == null)
{
//如果是null值,那么就像excel写入一个单元格,这个单元格的类型就是Blank
currentRow.CreateCell().SetCellType(CellType.BLANK);
}
else
{ //创建一个单元格
ICell cellLockDate = currentRow.CreateCell(); //创建一个单元格样式
ICellStyle cellStyle = wk.CreateCellStyle();
cellStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("m/d/yy h:mm");
//设置当前单元格应用cellStyle样式
cellLockDate.CellStyle = cellStyle; cellLockDate.SetCellValue((DateTime)lockDates);
}
currentRow.CreateCell().SetCellValue(IsMoving);
currentRow.CreateCell().SetCellValue(IsType);
} //写入
using (FileStream fsWrite = File.OpenWrite("半成品库存表.xls"))
{
wk.Write(fsWrite);
}
label1.Text = "写入成功!" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
else
{
label1.Text = "没有查询到任何数据";
}
} }

如何数据库表数据导出到excel中的更多相关文章

  1. 使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!

    一.需求 我们会遇到开发任务: 经理:小王,你来做一下把数据库里的数据导出到Excel中,一个表是一个sheet,不要一个表一个Excel. 小王:好的,经理.(内心一脸懵逼) 二.前期准备 首先我们 ...

  2. Python小练习_数据库表数据导出到excel

    需求:只要传入一个表名,就能把所有的数据导入出来,字段名是excel的表头 1.要动态获取到标的字段 cur.descrption能获取到表的字段 fileds = [filed[0] for fil ...

  3. 如何将存储在MongoDB数据库中的数据导出到Excel中?

    将MongoDB数据库中的数据导出到Excel中,只需以下几个步骤: (1)首先,打开MongoDB安装目录下的bin文件夹,(C:\Program Files (x86)\MongoDB\Serve ...

  4. 将Datagridview中的数据导出至Excel中

        首先添加一个模块ImportToExcel,并添加引用         然后导入命名空间: Imports Microsoft.Office.Interop Imports System.Da ...

  5. Pl/sql 如何将oracle的表数据导出成excel文件?

    oracle将表数据导出成excel文件的方法 1)在SQL窗体上,查询需要导出的数据 --查询数据条件-- ; 结果视图 2)在查询结果的空白处,右键选择Copy to Excel 3) 查看导出e ...

  6. 将datagrid中数据导出到excel中 -------<<工作日志2014-6-6>>

    前台datagrid数据绑定 #region 导出到excel中    /// <summary>    /// 2014-6-6    /// </summary>    / ...

  7. Magic xpa 3.x很容易将数据导出到Excel中

    Magic xpa 3.x很方便的将表中数据导出到Excel文件中,还可以自动将表中数据生成各种图表. 通过使用自带的打印数据内部事即可实现. 1.首先将打印数据任务属性设置为“是”. 2.可使用主程 ...

  8. 数据导出到Excel中

    自己修改后的一个数据导出到Excel的方法,粘出来与大家共享. 只需要将             System.Web.HttpContext.Current.Response.Charset =   ...

  9. Python 把数据库的数据导出到excel表

    import io,xlwt def export_excel(request): """导出数据到excel表""" list_obj = ...

随机推荐

  1. kali linux下的arp攻击

    这是我第一篇博客,写的不好请谅解 ____________________________(分割线)_______________________________ 在kali linux系统下自带工具 ...

  2. 敏捷转型历程 - Sprint3 Planning

    我: Tech Leader 团队:团队成员分布在两个城市,我所在的城市包括我有4个成员,另外一个城市包括SM有7个成员.另外由于我们的BA离职了,我暂代IT 的PO 职位.PM和我在一个城市,但他不 ...

  3. 第11章 Linux服务管理

    1. 服务分类 (1)Linux的服务 ①Linux中绝大多数的服务都是独立的,直接运行于内存中.当用户访问时,该服务直接响应用户,其好处是服务访问响应速度快.但不利之处是系统中服务越多,消耗的资源越 ...

  4. 《Walking the callstack(转载)》

    本文转载自:https://www.codeproject.com/articles/11132/walking-the-callstack Download demo project with so ...

  5. SQL Server2014 SP2关键特性

    SQL Server2014 SP2关键特性 转载自:https://blogs.msdn.microsoft.com/sqlreleaseservices/sql-2014-service-pack ...

  6. ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库

    前段时间在园子里看到了小蝶惊鸿 发布的有关绿色版的Linux.NET——“Jws.Mono”.由于我对.Net程序跑在Linux上非常感兴趣,自己也看了一些有关mono的资料,但是一直没有时间抽出时间 ...

  7. Linux学习日记(二)

    在linux上运行.Net程序 并安装Linux网站 一.环境 ubuntu14.10(桌面版 官网下载的最新版) jexus5.6.3 正式版 MonoDevloper (安装完后里面有个Ubunt ...

  8. Dubbo学习小记

    前言 周一入职的新公司,到了公司第一件事自然是要熟悉新公司使用的各种技术,搭建本地的环境. 熟悉新公司技术的过程中,首先就是Maven,这个前面已经写过文章了,然后就是Dubbo----公司的服务都是 ...

  9. Angular2学习笔记——路由器模型(Router)

    Angular2以组件化的视角来看待web应用,使用Angular2开发的web应用,就是一棵组件树.组件大致分为两类:一类是如list.table这种通放之四海而皆准的通用组件,一类是专为业务开发的 ...

  10. 神通广大的CSS3选择器

    每个前端工程师可能每天都会写一些css,其中选择器是很主要的一部分.但是,大家可能每天写的大多是#id,.class这样的选择器,这并不稀奇,但是如果我们了解并且熟用css3为我们提供的强大并且优雅的 ...