日期:2014-05-20  浏览次数:20702 次

rows.remove方法的问题
数据库里面有满足条件的记录,为什么删不掉呢?
                        DataTable   dt   =   ds.Tables[0];
                        DataRow[]   r   =   dt.Select( "id= 'cc ' ");
                        if   (r.Length   >   0)
                        {
                                dt.Rows.Remove(r[0]);
                        }
                        try
                        {
                                da.Update(ds,   "aa ");
                        }
                        catch   (SqlException   ex)
                        {
                                MessageBox.Show(ex.Number.ToString());
                        }


------解决方案--------------------
不能用remove,应该用row.delete方法
------解决方案--------------------
update的本质是判断每行数据的状态,然后根据其状态来决定对四个Command中调用哪一个
如若是Delete方法的话,只是更改了行的状态
如若是Remove方法的话,真的删掉了这一行后...也就没有状态了,Adapter就不知道曾经还有这么一条数据要处理...结果当然是什么都不做

曾经有一条珍贵的DataRow摆在你的面前
而你却没有好好珍惜
当你Remove的时候才后悔莫及
人世间最悲惨的事情莫过于此