接触和熟悉C# Winform的朋友   有谁在使用DataGirdView + DataSet(或SqlDataReader)同步数据库中数据(增、删、改、查)时遇到过这样的问题:
    当你将数据从数据库中取来绑定到DataGridView中后,内存中便出现了临时数据集,可是这时但你再使用任何的SQL语句作用对象将一直是这个临时数据集,数据操作无法直接作用于数据库数据,这种情况是为何呀?又该如何解决呢?

解决方案 »

  1.   

    DataSet有一个UPDATE方法,给更新到数据库。也可以自己设置更新语句。
      

  2.   

    public DataSet CreateCmdsAndUpdate(string connectionString,
        string queryString)
    {
        using (OleDbConnection connection = new OleDbConnection(connectionString))
        {
            OleDbDataAdapter adapter = new OleDbDataAdapter();
            adapter.SelectCommand = new OleDbCommand(queryString, connection);
            OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter);        connection.Open();        DataSet customers = new DataSet();
            adapter.Fill(customers);        //code to modify data in dataset here        adapter.Update(customers);        return customers;
        }
    }
      

  3.   

    DataSet ds = new DataSet();
    using(SqlConnection conn = new SqlConnection(""))
    {          
    SqlDataAdapter ada = new SqlDataAdapter(sql, conn);            
    SqlCommandBuilder cb = new SqlCommandBuilder(ada);            
    ada.Update(ds);           
    }