dataset 更新到数据库的问题

这篇博客讨论了在使用dataset更新数据库时遇到的问题。代码尝试从数据库获取数据,填充到dataset中,然后进行修改,但即使数据发生变化,`dsE.HasChanges()`始终返回false,导致无法更新数据库。
摘要由CSDN通过智能技术生成

string everyConn = Common.CommonUtility.GetEveryConn ();
//   EmpResource mpEvery = new EmpResource(everyConn);
//   DataSet dsE= mpEvery.mpResourceList ();
//   DataTable dtE=dsE.Tables[0];
   DataSet dsE = new DataSet();
   System.Data.SqlClient.SqlConnection Econn = new SqlConnection(everyConn);
   
   string strSql = " select * from empResource";
   Econn.Open();
   //SqlCommand everyCmd = new SqlCommand(strSql,Econn);
   //string srcTable ="empResource";
   SqlDataAdapter sqlAdapter = new SqlDataAdapter(strSql,Econn);

   SqlCommandBuilder scb = new SqlCommandBuilder(sqlAdapter);
   //everyCmd.ExecuteNonQuery();
   sqlAdapter.Fill(dsE,"empResource");

   DataTable dtE=dsE.Tables["empResource"];
   dtE.PrimaryKey = new DataColumn[]{dtE.Columns["mpId"]} ;

   
   EmpResource mp = new EmpResource(conStr);
   DataSet ds = mp.mpResourceByMpId (pubMpId);
   DataTable dt = ds.Tables[0];
   int rowCount = dt.Rows.Count;
   if(rowCount>0)
   {
    for (int i=0;i<rowCount;i++)
    {
     if(dtE.Select("mpId="+dt.Rows[i]["mpId"].ToString())!=null)
     {
      dtE.ImportRow (dt.Rows[i]);
      dtE.AcceptChanges ();
      

     }
     
    }
   }
   
   dsE.Merge(ds);
//   foreach(DataRow dr in dsE.Tables[0].Rows)
//   {
//    Response.Write (dr["mpId"].ToString()+"|");
//    Response.Write (dr["mpName"].ToString()+"#");
//   }
   //Response.Write (dsE.HasChanges());
   sqlAdapter.Update(dsE,"empResource");
   
   //dsE.AcceptChanges();
   Econn.Dispose();

 

 

不报错,可是就是更新不了数据库

而且dsE.HasChanges()一直是flase

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值