codice:
      'apro la connessione
      Dim Path As String = DB_Folder & "\mydbbase.mdb"
      Dim DBconn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Path)

      DBconn.Open()
      Dim da As New OleDbDataAdapter("Select * From HH", DBconn)
      Dim ds As New DataSet
      Dim dt As New DataTable

      da.Fill(ds, "HH")
      dt = ds.Tables("HH")

      'devo dichiararla o il metodo Find non funziona
      dt.PrimaryKey = New DataColumn() {dt.Columns("Nome")}                

      Dim FoundRow As DataRow
      FoundRow = dt.Rows.Find(MyName)

      FoundRow.BeginEdit()
      FoundRow(1)= "Pippo"
      FoundRow(2)= "Pluto"
      FoundRow(6)= "Paperino"
      FoundRow.EndEdit()

      FoundRow.AcceptChanges() 'non cambia nulla se lo tolgo
      dt.AcceptChanges() 'non cambia nulla se lo tolgo
      ds.AcceptChanges() 'non cambia nulla se lo tolgo

      Dim DBcommand As New OleDbCommandBuilder(da)
      da.Update(dt)
      'da.Update(ds)         'non cambia nulla
      'da.Update(ds, "HH")   'non cambia nulla
Il codice, inserito in Try... Catch non genera nessuna eccezione.

Se inserisco dei blocchi nel codice e controllo dt e ds vedo che la tabella è regolarmente cambiata coi nuovi valori assegnati... ma se vado poi a vedere con Access il DB... non è cambiato.

Dove sbaglio?