刚才发帖打错了..  不好意思啊..private void updata()
  {
  OleDbCommandBuilder ob = new OleDbCommandBuilder(da); //第一行
  da.UpdateCommand = ob.GetUpdateCommand(); //第二行
  da.InsertCommand = ob.GetInsertCommand(); //第三行
  da.DeleteCommand = ob.GetDeleteCommand(); //第四行  da.Update(ds,"通讯录"); //第五行
  }  private void Form1_FormClosed(object sender, FormClosedEventArgs e)
  {
  updata(); //第六行
  }
da 是OleDbDataAdapter,ds是DataSet,
 我在dataset中进行删除、更改、添加行后,用updata更新数据源,可每次调用private void updata()的时候,总会在第二行抛出一个异常 “对于不返回任何键列信息的 SelectCommand,不支持 UpdateCommand 的动态 SQL 生成.”
如果我把第二行给注释了,同样的异常会出现在第三行,
不好意思啊..