Hola,
yo es que no trabajo de esa forma, por lo cual no puedo mucho ayudarte.
Yo lo que hago es insertar, actualizar, eliminar, etc. directamente atacando a la BD, sin hacer las acciones con el dataset.
Vamos, lo que yo hago, por ejemplo:
Cita: conn.open
cmd.connection=conn
cmd.commandtext="update clientes set cliente=@cliente,poblacion=@poblacion where idCli=1"
cmd.parameters.add("@cliente",txtCliente.text)
cmd.parameters.add("@poblacion",txtPob.text)
cmd.executeNonquery
cmd.parameters.clear
conn.close
De esta forma no tendrías ningún problema, por muchos registros que tengas.
saludos!