我有一种思路,先将datagird的删除,然后将这个原来的dataset帮定,但这样一来,如果另一个用户删除了一条记录,而此用户却没有删除,则会出现并发的问题,是这样的马?

解决方案 »

  1.   

    duwamish好像没有删除巴
    我只是想知道可否自己构建一个dataset,利用dataAdapter一次删除.
      

  2.   

    我只是想知道可否自己构建一个dataset,利用dataAdapter一次删除数据库中对应的数据?<<<<可以的
      

  3.   

    楼上,怎么删?怎么建立?我感觉dataadapter是要和一个dataset建立关系才可以.如果是强写一个dataset删除它会说需要一个insertCommand,我想它参考了我这个dataset里面的某个标志,我发现好像有个newrow好像,是不是这个东西?我就是想知道dataadapter和dataset关联操作的具体情况,能说明一下吗?
      

  4.   

    public myDataSet:DataSet()
    {
       public myDataSet()
       {
             DataTable dt=new DataTable();         dt.Columns.Add("Test",typeof(int));
             
             this.Tables.Add(dt);         
        }
    }//取得数据,假设有n条记录SqlDataAdapter adp=new SqlDataAdapter();
    adp.Connection=conn;
    adp.SelectCommand=new SqlCommand(strSql);adp.Fill(ds);//删除数据,在此之前如果有新增数据也请给adp的InsertCommand属性赋值ds.Tables[0].Rows[n行].Delete();
    SqlDataAdapter adp=new SqlDataAdapter();
    adp.TableMappings.AddRange(new DataTableMapping[] { new DataTableMapping("Table", "Addresses", new DataColumnMapping[] {new DataColumnMapping("ID", "ID")})})adp.Connection=conn;SqlCommand comm=new SqlCommand(strSql)//strSql sample:
                                          //"delete from myTable where id =@ID"
    comm.Parameters.Add(new SqlParameter("@Original_ID", SqlDbType.Int, 4, ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "ID", System.Data.DataRowVersion.Original, null));adp.DeleteCommand=comm;
    adp.Update(ds);//关键在删除数据库之前请不要AcceptChanges();
    ds.AcceptChanges();