title: Update multiple records in SQL from Access without error "The data has been changed"
body: <p>I am working with an ODBC connection between Access 2013 front end and a SQL Server 2008R2 back end. I have both “Datasheet” and “Continuous” forms that display multiple records which are sorted on an “order” field (integer).  </p>
  
  <p>The record source of these forms is a query (an Access local query right now, but I don’t think that switching it to a SQL Server view will solve my problem). Users use these forms to set/update the order of their records for reporting purposes. </p>
  
  <p>My problem: the forms are updateable, but keep throwing the error </p>
  
  <blockquote>
    <p>The data has been changed. Re-edit the record.</p>
  </blockquote>
  
  <p>I know this error can be solved by setting the respective form to re-query after every update, but that is equally frustrating to the user because then their records are constantly re-sorting on them as they are trying to set the order (and the form "blips" after every entry).  </p>
  
  <p>(I have the field "Timestamp" in all my tables. I know a similar error is raised if one does not have this field in a SQL BE database linked to an Access FE.) </p>
  
  <p>What is the best way to allow the users to update the order of all their records without the form resorting on them? (I would like to keep the “sort” in the query on the “order” field so when they open the form next time it displays the records in the order they specified.) I’ve read about using unbound forms with a stored procedure to update the SQL data, but this seems to be useful for one record at a time. Could I use a temp local table, and then do a batch update with a stored procedure?  If that is the best answer, I also ask for some example code to get me headed in the right direction. :)</p>