SqlDataAdapter daRegister=new SqlDataAdapter(strSql,cnnRegister);
daRegister.Fill(dsRegister);
//删除一行
dsRegister.Tables[0].Rows[4].Delete();
dsRegister.Tables[0].AcceptChanges();
daRegister.Update(dsRegister);
执行后数据依然存在,为什么啊?
解答:
DataAdapter.Update应该至是update changed rows
如果已经AcceptChanges
DataAdapter.GetChanges() return 0 row
不能再upate
SqlCommandBuilder cb = new SqlCommandBuilder(daRegister);
daRegister.Fill(dsRegister);
dsRegister.Tables[0].Rows[0].Delete();
if (daRegister.Update(dsRegister.GetChanges()) >0)
dsRegister.Tables[0].AcceptChanges();