將sql server中的資料倒入Excel(c#)

來源:互聯網
上載者:User

出處:http://www.csyh.com
雖然,sql server中的DTS也能將資料倒入Excel,但不如使用程式靈活,
本程式主要代碼在按鈕函數內。可適應於報表開發的讀取資料部分:)
我刪除了原程式的很多垃圾代碼,只留主要起作用的代碼

//加入名稱空間
using System.Data;
using System.Data.SqlClient;


//定義方法GetData(),返回一個資料表
private System.Data.DataTable GetData()
{
SqlConnection conn= new SqlConnection(@"Server=PXGD2;Initial Catalog=pingxiang;Uid=sa;Pwd=;");
SqlDataAdapter adapter= new SqlDataAdapter("select  username 使用者名稱,catalyst_port 佔用連接埠,home_address 住家住址,ip_address

ip地址,phone 電話,addtime 開通日期 from userinfo where catalyst_port=1 or catalyst_port='' order by ip_address desc",conn);

DataSet ds= new DataSet();
try
 {
  adapter.Fill(ds,"Customer");
  }
catch(Exception ex)
 {
  MessageBox.Show(ex.ToString());
 }
return ds.Tables[0];
}

//按鈕
private void button1_Click(object sender, System.EventArgs e)
{
  Excel.Application excel= new Excel.Application();
  int rowIndex=1;
  int colIndex=0;

  excel.Application.Workbooks.Add(true);
    
  DataTable table=GetData();
     
  //將所得到的表的列名,賦值給儲存格
  foreach(DataColumn col in table.Columns)
  {
   colIndex++; 
   excel.Cells[1,colIndex]=col.ColumnName;    
  }

  //同樣方法處理資料
  foreach(DataRow row in table.Rows)
 {
    rowIndex++;
    colIndex=0;
    foreach(DataColumn col in table.Columns)
    {
 colIndex++;
 excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();
    }
  }
  //不可見,即幕後處理
  excel.Visible=true;  
}
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.