0

Can't post code because of Fed policy, so I will ask the question here.

We are working on a series of polygon feature classes that are used to define large activity areas. These polygons are modified using arcpy such that activity exclusion areas are cut out of the larger polygon. To accomplish this end we are using arcpy.da.Editor(). The code works beautifully in a file geodatabase, but when executed in Oracle Spatial, it refuses to push edits from the delta tables into the 'A' table in Oracle Spatial. My first thought to a solution here would be to access the 'SHAPE@' object in the fGDB then convert it to a string and use an "UPDATE" command in Oracle SQL via ArcSDESQLExecute to push the edits to the 'A' tables.

Can anyone else come up with a better solution? Our DBA insists that this issue is on the code side and not a quirk of Oracle.

  • You're describing software operating as designed. One sure way to cause database integrity failure would be to hack the the business table with SQL outside the versioning context, so you won't find many who will encourage that procedure (and shouldn't trust any that do). – Vince Sep 15 '17 at 0:12
  • I'm confused by the terminology. The A table is one of the delta tables. If you edit in a versioned environment adds and updates are recorded in the A table. It sounds like you want to see that data in the base table. Is this correct? – Dowlers Sep 15 '17 at 20:39
1

I have only ever used sqlserver or postgresql, but I usually would register the feature class as versioned, write to a child version of the database, save edits, stop editing, then I would have to use the arcpy tool to Reconcile Versions. You usually want to avoid writing directly to the default version.

Edit - reconcile versions, not synchronize changes. synchronize changes is for two databases.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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