将DBF文件导入到其它数据库

.NET技术 专栏收录该内容
6 篇文章 0 订阅

说明:一直在网上找在asp.net(C#)中将DBF文件导入到SQL Server的方法,均不成功!后来找到网友sunrongxa(西康指挥部.net)在一个贴子中的解答,参照成功完成了。特此摘录!非常感觉网友sunrongxa(西康指挥部.net)。

 

 

注意:DBF要foxpro格式  
  vfp的先转成foxpro。in   vfp:   use   database   enter   copy   to   your   need   database   name   foxplus  
  //connect   to   foxpro  
  string   strConnFox="Provider=Microsoft.Jet.OLEDB.4.0;Data   Source="+System.Web.HttpContext.Current.Server.MapPath("")+"//UpLoad"+";Extended   Properties=dBase   IV";  
  //connect   to   Access   in   this   you   need   to   change   to   sqlserver  
  string   strConnAcc="Provider=Microsoft.Jet.OLEDB.4.0;Data   Source="   +   System.Web.HttpContext.Current.Server.MapPath("..//")+"zql.mdb"   ;  
   
  OleDbConnection   connFox   =   new   OleDbConnection(strConnFox);  
  OleDbConnection   connAcc   =   new   OleDbConnection(strConnAcc);  
  OleDbDataAdapter   adp1   =   new   OleDbDataAdapter("select   dm,xm,xmjx,xb,mz,jg,csrq,brcf,whcd,bysj,xz,xxmc,zy,hsgz,bh,zw,zc,zm,zzmm,bzgz,gwgz   from   rsda",connFox);  
  OleDbDataAdapter   adp2   =   new   OleDbDataAdapter("select   dm,xm,xmjx,xb,mz,jg,csrq,brcf,whcd,bysj,xz,xxmc,zy,hsgz,bh,zw,zc,zm,zzmm,bzgz,gwgz   from   rsda",connAcc);  
   
  OleDbCommandBuilder   cb   =   new   OleDbCommandBuilder(adp2);  
  //删除原有的rsda  
  OleDbCommand   cmdDelAll   =   new   OleDbCommand("delete   *   from   rsda   where   biaoji   is   null   or   biaoji=''",connAcc);  
  connAcc.Open();  
  cmdDelAll.ExecuteNonQuery();  
  cmdDelAll.Dispose();  
  DataSet   myset   =   new   DataSet();  
  adp1.Fill(myset,"rsdaFox");  
  adp2.Fill(myset,"rsdaAcc");  
   
  DataRow   row,row1;  
  foreach(DataRow   dr   in   myset.Tables["rsdaFox"].Rows)  
  {  
  row   =   myset.Tables["rsdaAcc"].NewRow();  
      foreach   (DataColumn   c   in   myset.Tables["rsdaFox"].Columns)  
      {  
            row[c.ColumnName]   =   dr[c.ColumnName];  
      }  
      myset.Tables["rsdaAcc"].Rows.Add(row);  
  }  
  adp2.Update(myset,"rsdaAcc");  

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值