excel文件更新数据库

    技术2022-05-11  11

    excel文件更新数据库

    需要注意的是,在检索excel数据的时候,excel文件的第一行是不被检索的,所以excel的第一行要不空着,要不就写数据的标题 ,如:id      工号124     小王125     小李

    上传的文件夹要有写入权限,即本例的 upload的属性里 ,有写入的权限

     

    private void ImageButton1_Click(object sender, System.Web.UI.ImageClickEventArgs e)  {   //将要更新的EXCEL文件上传到服务器上   string filenm="";   if(this.uploadfile.PostedFile.ContentLength!=0)   {    string fnm=this.uploadfile.Value;    //string ftype=fnm.Substring(fnm.Length-4,4);    string tmp=strsp(fnm);    int t=tmp.IndexOf("//",1);    string tmp2=tmp.Substring(0,t);    filenm=DateTime.Now.ToString("yyyyMMddhhmmss")+"_"+Session["empID"].ToString()+"_"+strsp(tmp2);    string filepath="..//Upload//"+filenm;    ViewState["filepath"]=filepath;    this.uploadfile.PostedFile.SaveAs(Server.MapPath(filepath));    //this.lb_info.Text="上传成功!!";   }      else   {    Page.RegisterStartupScript("","<script language='javascript'>alert('更新失败!请检查后重新提交!');</script>");   }

       //下面开始更新数据库数据   //string filePath = "C:/Inetpub/wwwroot/client_care/upload/"+filenm;   string path = "../upload/"+filenm;   string filePath = Server.MapPath(path);   //建立连接   string   mystring="Provider=Microsoft.Jet.OLEDB.4.0; Data Source= "+filePath+";Extended Properties=Excel 8.0";      OleDbConnection cnnxls = new OleDbConnection(mystring);   //读取数据      OleDbDataAdapter myDa = new OleDbDataAdapter("select * from [Sheet1$]",cnnxls);   DataSet   myDs   =new   DataSet();     //将数据放入dataset    myDa.Fill(myDs);          if(myDs.Tables[0].Rows.Count>0)      {    //测试    //this.lb_info.Text=myDs.Tables[0].Rows[0].ItemArray[0].ToString();

        //如果出错 ,显示第二列的内容,即工号    string info="";

        for(int i=0;i<myDs.Tables[0].Rows.Count;i++)    {     string id = myDs.Tables[0].Rows[i].ItemArray[0].ToString() ;     string gonghao = myDs.Tables[0].Rows[i].ItemArray[1].ToString();     //调用在另一个文件里的类(others的uppdateExcel),进行数据的update    //当然你可以在这里建立数据库的连接,进行数据update     int num = others.updateExcel(id,gonghao);     //判断是否更新成功,如果不成功,则记录错误工号     //由于此时只执行一条语句,所以成功则返回“1”,不成功则返回“0”     if(num!=1)     {      info=info+gonghao+" ";     }    }    if(info=="")    {     Page.RegisterStartupScript("","<script language='javascript'>alert('"+info+"提交失败,您只能更改本地区的客户经理!');</script>");    }    else    {     Page.RegisterStartupScript("","<script language='javascript'>alert('提交成功!');</script>");    }   }  }


    最新回复(0)