I'm trying to help a client who mistakenly checked the "Move Edits to Base" option when versioning a feature class in ArcGIS. They would now like to fix this mistake. However, they don't want to lose any of the versioned edits in that feature class, and they cannot reconcile and post everything in it. There are a couple of years of work in there from several thousand long-lived versions.

Does anyone know of a way to accomplish this?


  • I think this is an situation where you need to talk to ESRI Support. But make sure that you reproduce the issue and try the solution on a test Featureclass first. Feb 27, 2013 at 16:27
  • I agree, one thought is export current to filegdb, unversion, truncate, then import from fgdb. But I think support would be the place to turn to.
    – Brad Nesom
    Feb 27, 2013 at 21:11
  • ESRI support was unable to proved a supported solution.
    – mlb55
    Feb 28, 2013 at 18:29
  • backup/restore? Mar 5, 2013 at 0:33

2 Answers 2


You could try this, but it is going to be completely unsupported as it goes against ESRI documentation....and I haven't tested it.

  1. backup your database
  2. test your database backup
  3. create a new feature class with the same schema as your current one, register as versioned
  4. make sure that no one is editing the feature class
  5. run sql to copy all the data from the base, A and D tables to the new base, A and D tables

At this point the new feature class should be an exact copy of the old feature class.

The only supported way I can think of doing this is through difference cursors. You would have to write some custom code to request the differences, and then apply them to a copied version of the feature class. This shouldn't be overly difficult.


If you do the above, using SQL to copy the data, then it may cause other side affects even though you may see the data in your feature class. I recently did something similar (append data to a feature class via SQL Server instead of doing it via ArcMap) and later when I did an intersect, the newly added rows were not included in the intersect results. I got around this by exporting the appended feature class to a new feature class and then the intersect worked

  • I am guessing that this didn't work in your case because you only added data to your base table. In that case, the rows would be returned if and only if there aren't any deletes to those objectids in the current version's (or state's) state linage. Ie, if that objectid isn't deleted in some child state. By copying the A and D tables, you preserve the state changes for that table, and because it is the same database, the linage will be the same. If you want to use sql to append data to a versioned table correctly, you should take a look at (multi)versioned views.
    – travis
    Jul 26, 2013 at 10:18
  • Link the ArcGIS Versioned View Help Doc
    – travis
    Jul 26, 2013 at 10:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.