数据库中的表是user
生成了userTableAdapter
没有手动生成DataSet对象
也没有用到DataTable
用的是一个自定义TableAdapter对象DataSetTableAdapters.userTableAdapter users = new GPRSchaobiao.DataSetTableAdapters.userTableAdapter();和其中的一些自定义方法dataGridView1.DataSource = users.GetUsers();
users.Delete(int.Parse(dataGridView1.CurrentRow.Cells[0].Value.ToString()));delete方法调用之后数据集更新了,但是数据库没更新……

解决方案 »

  1.   

    DataSet ds = new DataSet();
    SqlDataAdapter sda;SqlCommandBuilder scb = new SqlCommandBuilder(sda);
    sda.Update(ds);
    this.dataGridView1.DataSource = ds.Tables[0];
        
      

  2.   

    Delete()方法不更新数据库,2002、2003、2005都是如此,需要自己写代码
      

  3.   


    你好,这个delete是我自定义的,更新数据库,但是最后我发现,因为我的数据库文件放在了项目文件夹内,所以在调试的时候使用的是bin/debug/文件夹内的数据库,当调试完以后,VS会根据一个属性将原数据库覆盖掉调试数据库,所以原数据库从来没有改变过,在解决方案中选择数据库,这个属性是“复制到输出目录”