日期:2014-05-17  浏览次数:20817 次

DataSet数据更新优化问题
 以下主要是确定在DataSet中是存在指定的值,如果存在,则在数量上自增1,
 如果DataSet存在上万条记录,通过通过以下代码全表循查找更新是否会比较耗时?(其实就只需要更新一条)
请问在更新数量的操作上是否有更优化的方法???????????????????????
                String ID ="AAAAAA";
                String Name = "BBBBBB";              
                DataView tab = new DataView(ds.Tables[0]); 
                tab.RowFilter = "ids = '" +ID + "'";
                if (tab.Count < 1)
                {
                        DataRow row = ds.Tables[0].NewRow();
                        row["ids"] = ID;
                        row["names"] = Name;
                        row["quantity"] = 1;
                        ds.Tables[0].Rows.Add(row);
                        ...........

                    }
               else
               {

                   //以下更新操作是否可以优化??????????????????? ------------------
                   int qty = 0;
                   for(int i=0;i<ds.Tables[0].Rows.Count;i++)
                   {
                      if (ds.Tables[0].Rows[i]["ids"].ToString() == ID)
                      {
                             qty = (int)ds.Tables[0].Rows[i]["quantity"];
                             ds.Tables[0].Rows[i]["quantity"] = qty + 1;