我是一只刚接触.NET的小菜鸟,请问各位大虾:如何在线导入外部EXECEL表格到后台数据库中的表?(求C#代码 )
比如我后台数据库的表是:“教师信息表”,我想在EXECEL中将新增的记录导入到这个表中。

解决方案 »

  1.   

    555
    我菜鸟一只,不懂你说的什么VBA?
    能说清楚点儿吗?
      

  2.   

    Excel => DataSet:
    http://www.codeproject.com/csharp/excel_using_oledb.aspDataSet => SQL Server:
    http://blog.csdn.net/Knight94/archive/2006/05/01/704316.aspx
      

  3.   

    能不能帮我看看我这样写哪儿出错了吗?
    private void Button1_Click(object sender, System.EventArgs e)
    {
    Class.DataProcess  dataProcess=new Class.DataProcess( );
    string excel=this.File1.Value.Trim();
    //设置表名
    string tableName=this.TextBox1.Text.Trim();
    string strSql2=null;
    if(excel=="" || tableName=="")             //判断路径或者域名是否为空
    this.Message .Text ="没有选择路径或输入域名!";   
    else
    {
    string StrConn=dataProcess.getSqlConn( ); string OleConn="provider=Microsoft.Jet.OLEDB.4.0; " +"data source='"+excel+"';"+"Extended Properties=Excel 8.0;";
    // string OleConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+excel+";Extended Properties=Excel 8.0;" ;
    string OleString="select * from "+tableName+"";     //查询Excel数据库
    OleDbConnection OleConnection=new OleDbConnection(OleConn);        //连接Excel数据库
    OleDbCommand myOleDbCommand=new OleDbCommand(OleString,OleConnection);
    OleConnection.Open ();               
    OleDbDataReader reader=myOleDbCommand.ExecuteReader();   
    //读取查询到的数据
    while(reader.Read())   //循环读取Excel中的数据
    { string 部门=reader["部门"].ToString().Trim();
    string 姓名=reader["姓名"].ToString().Trim();
    string 标准工资=reader["标准工资"].ToString().Trim();
    string 津贴=reader["津贴"].ToString().Trim();
    string 暂留贴=reader["暂留贴"].ToString().Trim();
    string 补差=reader["补差"].ToString().Trim();
    string 市津贴=reader["市津贴"].ToString().Trim();
    string 住房贴=reader["住房贴"].ToString().Trim();
    string 燃料贴=reader["燃料贴"].ToString().Trim();
    string 科技贴=reader["科技贴"].ToString().Trim();
    string 适当贴=reader["适当贴"].ToString().Trim();
    string 生活贴=reader["生活贴"].ToString().Trim();
    string 百分之十工资=reader["百分之十工资"].ToString().Trim();
    string 教龄贴=reader["教龄贴"].ToString().Trim();
    string 奖金=reader["奖金"].ToString().Trim();
    string 其它=reader["其它"].ToString().Trim();
    string 应发工资=reader["应发工资"].ToString().Trim();
    string 房租=reader["房租"].ToString().Trim();
    string 水电费=reader["水电费"].ToString().Trim();
    string 公积金=reader["公积金"].ToString().Trim();
    string 工会费=reader["工会费"].ToString().Trim();
    string 所得税=reader["所得税"].ToString().Trim();
    string 教育基金=reader["教育基金"].ToString().Trim();
    string 失业险=reader["失业险"].ToString().Trim();
    string 防洪费=reader["防洪费"].ToString().Trim();
    string 医疗险=reader["医疗险"].ToString().Trim();
    string 暂扣款=reader["暂扣款"].ToString().Trim();
    string 应税工资=reader["应税工资"].ToString().Trim();
    string 应扣款=reader["应扣款"].ToString().Trim();
    string 实发工资=reader["实发工资"].ToString().Trim();
    string 日期=reader["日期"].ToString().Trim();
    //以下是把数据插入到SQL数据库
    strSql2="insert into 教师工资表(部门,姓名,标准工资,津贴,暂留贴,补差,市津贴,住房贴,燃料贴,科技贴,适当贴,生活贴,百分之十工资,教龄贴,奖金,其它,应发工资,房租,水电费,公积金,工会费,所得税,教育基金,失业险,防洪费,医疗险,暂扣款,应税工资,应扣款,实发工资,日期) values('"+部门+"','"+姓名+"','"+System.Double.Parse(标准工资)+"','"+System.Double.Parse(津贴)+"','"+System.Double.Parse(暂留贴)+"','"+System.Double.Parse(补差)+"','"+System.Double.Parse(市津贴)+"','"+System.Double.Parse(住房贴)+"','"+System.Double.Parse(燃料贴)+"','"+System.Double.Parse(科技贴)+"','"+System.Double.Parse(适当贴)+"','"+System.Double.Parse(生活贴)+"','"+System.Double.Parse(百分之十工资)+"','"+System.Double.Parse(教龄贴)+"','"+System.Double.Parse(奖金)+"','"+System.Double.Parse(其它)+"','"+System.Double.Parse(应发工资)+"','"+System.Double.Parse(房租)+"','"+System.Double.Parse(水电费)+"','"+System.Double.Parse(公积金)+"','"+System.Double.Parse(工会费)+"','"+System.Double.Parse(所得税)+"','"+System.Double.Parse(教育基金)+"','"+System.Double.Parse(失业险)+"','"+System.Double.Parse(防洪费)+"','"+System.Double.Parse(医疗险)+"','"+System.Double.Parse(暂扣款)+"','"+System.Double.Parse(应税工资)+"','"+System.Double.Parse(应扣款)+"','"+System.Double.Parse(实发工资)+"','"+System.DateTime.Parse(日期)+"')";
    if(dataProcess.ExecuteNonQuery(strSql2)!=0)     //数据成功导入

    Response.Write("<script>alert(\"数据成功导入!\");</script>");
    }
    else                   //数据导入出错
    {
    Response.Write("<script>alert(\"数据导入出错!\");</script>");
    }   
    reader.Close( );
    } OleConnection.Close();
    } }