西西软件园多重安全检测下载网站、值得信赖的软件下载站!
软件
软件
文章
搜索

首页西西教程数据库教程 → 用NPOI工具把Sql Server数据导入到Excel文件

用NPOI工具把Sql Server数据导入到Excel文件

相关软件相关文章发表评论 来源:西西整理时间:2011/5/5 8:47:25字体大小:A-A+

作者:西西点击:226次评论:1次标签: Excel

  • 类型:办公软件大小:72.1M语言:中文 评分:.9
  • 标签:
立即下载

代码中数据库链接字符串自己修改,还有对应的字段名之类的信息;

新建一个Handler.ashx(一般处理程序) 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using NPOI.HSSF.UserModel;


namespace ExportToExcelWeb
{
    /// <summary>
    /// ExportToExcel 的摘要说明
    /// </summary>
    public class ExportToExcel : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "application/x-excel";
            string fileName = HttpUtility.UrlEncode("数据库文备份.xls");
            context.Response.AddHeader("Content-Disposition", "attachment; fileName=" + fileName);  //添加http协议报文;

            HSSFWorkbook workbook = new HSSFWorkbook(); //创建一个xls;
            HSSFSheet sheet = workbook.CreateSheet(); //创建一个Sheet页

            string connectString = @"server=localhost\sql2008;database=MyBlog; uid=sa; pwd=sql2008";
            SqlConnection connection = new SqlConnection(connectString);
            connection.Open();

            using (IDbCommand cmd = connection.CreateCommand()) //接口编徎;
            {
                cmd.CommandText = "select * from Users";
                using (IDataReader reader = cmd.ExecuteReader())
                {
                    int rowsNum = 0;  //行号
                    while (reader.Read())
                    {
                        //根据字段名找出ID
                        string LoginId = reader.GetString(reader.GetOrdinal("LoginId"));
                        string LoginPwd = reader.GetString(reader.GetOrdinal("LoginPwd"));
                        string Name = reader.GetString(reader.GetOrdinal("Name"));
                        string QQ = reader.GetString(reader.GetOrdinal("QQ"));
                        string Mail = reader.GetString(reader.GetOrdinal("Mail"));

                        /******************以上代码对应数据库表中的字段*********************/

                        HSSFRow row = sheet.CreateRow(rowsNum);
                        row.CreateCell(0, HSSFCell.CELL_TYPE_STRING).SetCellValue(LoginId);
                        row.CreateCell(1, HSSFCell.CELL_TYPE_STRING).SetCellValue(LoginPwd);
                        row.CreateCell(2, HSSFCell.CELL_TYPE_STRING).SetCellValue(Name);
                        row.CreateCell(3, HSSFCell.CELL_TYPE_STRING).SetCellValue(QQ);
                        row.CreateCell(4, HSSFCell.CELL_TYPE_STRING).SetCellValue(Mail);

                        /******************以上代码对应Excel文件的列************************/
                        rowsNum++;
                    }
                }
            }

            workbook.Write(context.Response.OutputStream);  //输出到流中

        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

Aspx页面代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="ExportToExcelWeb.Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <a href="ExportToExcel.ashx">下载备份数据库文件到Excel格式</a>
    </div>
    </form>
</body>
</html>

NPOI文件包:http://u.115.com/file/aqr5pjb7

程序源码:http://u.115.com/file/bhvr12dq

    表格软件
    (18)表格软件
    在日常办公中经常会需要用到表格软件,一般我们常见的表格软件就是了,不过只有正版系统中才有,而很多国人使用的都是盗版的系统是没有软件的。这里西西给大家提供了一些比较好用的表格软件下载,包括等软件,如果你的电脑中没有,需要找一些好用的软件可以来西西下载。...更多>>
    excel2007
    (11)excel2007
    这款办公软件大家平时都用吧,小编相信也不用做多介绍了,西西主要为大家带来官方原版及一些电子书快捷键等下载,有需要的就拿走吧官方下载说明这个版本是官方正式版,是官方许可免费发布的软件,可以在您的设备上安装和使用本软件的任意数量的副本。小编平时也经常用它,所以整理了一些格式的电子书分享给大家,新手可以认真看看。官方介绍是一款老牌的办公软件套装,可以实现办公软件最常用的文字表格演示等多种功能。内存占用低...更多>>

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶
    • 1 难过难过
    • 5 囧
    • 3 围观围观
    • 2 无聊无聊

    热门评论

    最新评论

    发表评论 查看所有评论(1)

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
    字数: 0/500 (您的评论需要经过审核才能显示)