3

I work for a department that get's a regular City Council District Shapefile showing the boundaries of each Councilors District. In our SDE we have a Council_District table with an exact duplicate of the previous City Council District Shapefile.

In SDE we have added other fields, links to websites for each councilor, etc. We utilize Flex Maps to make these maps public.

Everytime a new updated shapefile comes out, we copy over the Shapefile and write-over the SDE version with the new data. Then we have to re-create the added fields and their data.

This requires that we shut down every web map using this file which can disrupt both in-house and external users and is not efficient at all.

We are currently running version 9 servers, we will be updating to 10.1 in January. We will NOT be updating to 10.2 (yet!) due to data issues from our data providers.

Question(s)

Is there any way to just update the SDE from the Shapefile to avoid thisor do we always have to shut down webmap services?

1 Answer 1

2

Even though your shapefiles and SDE feature classes might have different schema, you can still use the Truncate Table GP tool (which will wipe out all rows but preserve the feature class and the schema, including data permissions) and then Append GP tool which will let you transfer the data between the shapefiles and the SDE feature classes without making any schema changes. Just use the NO_TEST option to disregard any potential schema differences between the source and the target. In case you will you have some mismatch between the fields, they will be just ignored.

This workflow is the best in my experience and I have seen many people doing this and this is also recommended by Esri. In this case, you don't have to stop any GIS services currently using the feature classes in your SDE geodatabase because you don't perform any schema changes.

However, if this is not applicable for your workflow directly, you might consider first joining some fields and match their names to make running the Append GP tool more effective. ModelBuilder or Python would be useful for automating this process if you have multiple datasets to iterate through and this process will occur often in the future.

PS. Just in case it might be relevant for you, map services since 10.0 have an option called Lock Database Schema which when disabled will let you update the schema of the underlying service data. However, users currently working with the service may experience unexpected behaviour while you update the schema of the data, so consider doing this only when the services are in idle state.

1
  • 1
    You can also use the Delete Features tool under the Data Management Tools toolbox which will only delete the data and not the schema. Then as - mentioned above - append the shapefile data into the SDE data. If you wanted to maintain some of the attributes i.e. the links etc, a custom Python tool could fairly easily be written to read the table before you delete the features, then re-write them afterwards to the new shapes.
    – dklassen
    Dec 19, 2013 at 19:47

Your Answer

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

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