zoukankan      html  css  js  c++  java
  • 使用DataReader读取记录集 输出全部记录

    今天需要把DataReader中的数据一条条的读取出来,然后以XML的形式生成为Excel格式导出!

    使用DataReader读取的方法:

    代码如下:

    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Data.SqlClient;
    public partial class DataReader : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
             string sConnectionString = @"server=AYANG\SQL2005;database=forum;Trusted_Connection=True";
             using (SqlConnection conn = new SqlConnection(sConnectionString))
             {
                 conn.Open();
                 using (SqlCommand cmd = new SqlCommand("Select * from tbClass;Select * from tbBoard", conn))
                 {
                     using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) //得到一个DataREeader
                     {
                         if (dr.HasRows) //记录集是否为空
                         {
                             do
                             {
                                 System.Text.StringBuilder htmlStr = new System.Text.StringBuilder(); //使用StringBuilder构造字符串效率比较高
                                 htmlStr.Append("<table border='1' cellPadding='5' cellSpacing='0' style='font-size:9pt; font:宋体'");//表格开始
                                 htmlStr.Append("<tr style='background-color='#F0F'>"); //表头开始
                                 for (int i = 1; i < dr.FieldCount; i++)
                                 {
                                     htmlStr.Append(string.Format("<td><b>{0}</b></td>", dr.GetName(i))); //构造表头
                                 }
                                 htmlStr.Append("</tr>");//表头开始
                                 while (dr.Read())
                                 {
                                     htmlStr.Append("<tr>");//记录开始
                                     for (int i = 0; i < dr.FieldCount; i++)
                                     {
                                         if (!dr.IsDBNull(i))
                                             htmlStr.Append(string.Format("<td>{0}</td>", dr.GetValue(i))); //构造记录行 
                                     }
                                     htmlStr.Append("</tr>");//表头开始
                                 }
                                 htmlStr.Append("</table><br>");//表头开始
                                 Response.Write(htmlStr);
                             }
                             while (dr.NextResult());
                         }
                     }
                 }
    
             }
    
        }
    }
     
    以上只是一个简单的例子,可以根据自己的需求来更改实现的功能~比如提取数据生成XML然后生成Excel
  • 相关阅读:
    传递函数笔记
    模糊控制算法详细讲解
    SDRAM学习笔记
    基于STM32的CRC校验说明
    如何把图片设置成24位图/8位图??
    C2MIF软件使用说明
    ROM和RAM的内存详细说明
    Logback配置
    Logback使用
    common-logging源码解析
  • 原文地址:https://www.cnblogs.com/dupeng0811/p/1735721.html
Copyright © 2011-2022 走看看