dataAdapter.Update(dataSet,"test"); //很明显这个dataset是空的!!

解决方案 »

  1.   

    怎么是空的?不是Fill了吗?
    string sql = "select name,address from a "; 
                dataAdapter = new SqlDataAdapter(sql, DBHelper.connection); 
                dataAdapter.Fill(dataSet,"test"); 
                dataGridView1.DataSource = dataSet.Tables["test"]; 
      

  2.   

    为UPDATECOMMAND动态生成的SQL语句不支持不返回包含主键字段信息的SELECTCOMMAND属性,SELECTCOMMAND属性的执行结果中所获取的字段必须包含主键,也就是数据库必须要有一个字段作为主键
    主键必需
      

  3.   

    Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information. 
    之前没遇到这错误。我看了写法也没错。不知道哪里出错了 很明显的提示说,更新语句不支持查询SelectCommand 不返回任何键列信息
    你的表没有主键