asp.net(c#)如何实现sql数据直接导入excel程序

解决方案 »

  1.   

    是不是数据库里面的内容导出到E_xcel里面?
      

  2.   

    一边用SqlConnection连接,一边用OleDbConnection连接,用SqlAdatpter来填充DataTable,那边将DataTable里的每一行insert into Excel表里。
      

  3.   

    1:sql工具可以导入
    2:如果你想实现最快速的话,用BCP命令.
    这样最好,几十万只要几秒!
    BCP命令的导入,可以看我的blog
    http://www.cnblogs.com/mqcan/archive/2008/03/07/1095361.html
      

  4.   

    读取到DataSet然后生成Excel
    google撒.网上很多...
      

  5.   

    这个我用过,希望能帮到你,不过是把数据从gridview中导出(其实也就是读取SQL数据库表,数据源),下面是导出Excel的代码,导出WORD等等的差不多代码一样1.导出Excel的类文件 
    using System; 
    using System.Data; 
    using System.Configuration; 
    using System.Web; 
    using System.Web.Security; 
    using System.Web.UI; 
    using System.Web.UI.WebControls; 
    using System.Web.UI.WebControls.WebParts; 
    using System.Web.UI.HtmlControls; 
    using System.IO; /// <summary> 
    /// Excel的摘要说明 
    /// </summary> 
    public class Excel:System.Web.UI.Page 

        public Excel() 
        { 
            // 
            // TODO: 在此处添加构造函数逻辑 
            // 
        }     /// <summary> 
        /// Grid导出excel 
        /// </summary> 
        /// <param name="GridView">GridView </param> 
        /// <param name="System.Web.UI.Page page">page </param> 
        /// <returns> </returns> 
        public static void GridToExcel(GridView gv,System.Web.UI.Page page) 
        { 
            //导出excel 
            page.Response.Clear(); 
            page.Response.Buffer = true; 
            page.Response.ContentType = "application/vnd.ms-excel"; 
            page.Response.Charset = ""; 
            page.Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8"); 
            page.EnableViewState = false; 
            StringWriter sw = new StringWriter(); 
            HtmlTextWriter htw = new HtmlTextWriter(sw); 
            gv.RenderControl(htw); 
            page.Response.Write(sw.ToString()); 
            page.Response.End(); 
        }     public override void VerifyRenderingInServerForm(Control control) 
        {     } 
    } 2.在含有GV的页面调用,比如将事件写在btOutExcel上,以gvZC为例, 
    添加引用: using System.IO; #region 导出Excel需要的东东(这个必需加上,否则会出错,空着就行) 
        public override void VerifyRenderingInServerForm(Control control) 
        {     } 
        #endregion     #region 导出Excel文件按钮事件 
        protected void btOutExcel_Click(object sender, EventArgs e) 
        { 
            gvZC.AllowPaging = false;//如果您gridview分了页,请加此代码 
            gvZC.Columns[0].Visible = false;//如果您的gridview有按钮列或不想显示的列,请隐藏列。 
              
            //导出excel 
            ZiChanBSL b = new ZiChanBSL(); 
            gvZC.DataSource = b.getZiChan(); 
            gvZC.DataBind(); //初始初自定义的方法,调用您的绑定gridview的方法重新绑定一次gridview         Excel.GridToExcel(gvZC, this.Page); 
        } 
        #endregion 
      
    应该绝对能用了,别望了给分
      

  6.   

    asp.net(c#)如何实现sql数据直接导入excel程序
    --------------------------------------------------
    1.先读取数据到dataset,然后转到excel
    2.sql工具可以导入,bcp命令
      

  7.   

    导出到excel
    EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""'
    /***********  导入Excel
    SELECT * 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions/*动态文件名
    declare @fn varchar(20),@s varchar(1000)
    set @fn = 'c:\test.xls'
    set @s ='''Microsoft.Jet.OLEDB.4.0'',
    ''Data Source="'+@fn+'";User ID=Admin;Password=;Extended properties=Excel 5.0'''
    set @s = 'SELECT * FROM OpenDataSource ('+@s+')...sheet1$'
    exec(@s)
    */SELECT cast(cast(科目编号 as numeric(10,2)) as nvarchar(255))+' ' 转换后的别名
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
      

  8.   

    直接从服务器中导出可能会有些问题,我们之前试验过,直接从服务器中导出得先导到服务器端的本地磁盘,然后再将文件放到项目文件里,我们下载时就从项目文件里下,整个过程要分成几个阶段,有些麻烦,如果是单机版的,就简单多了,所以建议将数据导到gridview再导出到Excel。这样简单些。
      

  9.   

           可以考勤虑 用VBA方式导入
      

  10.   

    逻辑就是先读到放到DataSet 然后再放到excel里面