也没报错吗?!不过,建议你的代码改改:procedure TRecieveForm.UpdateData ;
var  MyQuery1:TADOQuery;
begin
  try
    MyQuery1 := TADOQuery.Create(Nil);
    MyQuery1.Connection := Form1.ADO;
    MyQuery1.Close;
    MyQuery1.SQL.Clear;
    MyQuery1.SQL.Add('Update m_recieve Set m_item=:m_item,m_recieve=:m_recieve,m_money=:m_money,m_date=:m_date where id=:id2');
    MyQuery1.Parameters.ParamByName('m_item').Value  := combobox1.text;
    MyQuery1.Parameters.ParamByName('m_recieve').Value:= Edit1.Text;
    MyQuery1.Parameters.ParamByName('m_money').Value:= Edit2.Text;
    MyQuery1.Parameters.ParamByName('m_date').Value:= Edit3.Text;
    MyQuery1.Parameters.ParamByName('id2').Value:=Grid1.Cells[1,Grid1.Row];
    MyQuery1.ExecSQL;
  finally
    MyQuery1.Free;
  end;
end;