更新前,检查一下oleDbDataAdapter1的DeleteCommand的内容是否正确。是否正确使用了CommandBuilder?正确设置了SelectCommand?

解决方案 »

  1.   

    private void Form1_Load(object sender, System.EventArgs e)
    {
    OleDbConnection myCON = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; "+"Data Source=" + "C:\\db1.mdb");
    myDA = new OleDbDataAdapter("SELECT name FROM T1", myCON);
    myT = new DataTable();
    myDA.Fill(myT);
    this.dataGrid1.DataSource = myT;} private void button1_Click(object sender, System.EventArgs e)
    {
    int indexDel = this.dataGrid1.CurrentRowIndex;
    if(indexDel>=0)
    {
    this.myT.Rows[indexDel].Delete();
    this.myDA.Update(myT);
    this.myT.AcceptChanges();
    }
    }
      

  2.   

    this.dataTable1.Rows[0].Delete(); this.dataTable1.acceptchange();

    this.oleDbDataAdapter1.Update(dataTable1);
      

  3.   

    ....
    你那个当然不会出错了,没有修改数据库db1.mdb
      

  4.   

    老大,你的myDA 没有写DeleteCommand呀,也没有用CommandBuilder