This question already has an answer here:

I am working with data in an ArcGIS 10.1 geodatabase. I wanted to complete the simple task of taking a ten-digit ID field that is currently in String/Text format and create an identical field in Long/Numeric format.

However, Esri's resource pages on tables (http://resources.arcgis.com/en/help/main/10.1/index.html#/Common_tables_and_attributes_tasks/005s00000005000000/) do not discuss how to achieve this. Also, the following GIS/SE thread does not help me either: Is there a way to convert multiple columns at once from string to text, or to other data formats? and the post mentioned in the comment there refers only to QGIS.

In the meantime, I created a new table with the extra field, joined it to the original shapefile and will reimport this shapefile into the gdb, adjusting the new field format as needed.

Is there an easier way to complete this task?

marked as duplicate by RyanDalton, blah238, whuber Aug 27 '13 at 21:57

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


ArcGIS does not allow you to change an existing field's data type. I've only just discovered that they added the ability to rename a field in ArcGIS 10.1, which was never possible before. The only way I know of to modify a field data type in a file geodatabase feature class is to create a new field with the desired data type and use field calculator to calculate the new field's value based on the old field's value. Then you can delete the old field.

There are a couple of methods I have used to do this, but they both result in creating a new feature class.

First, you could use the Feature Class to Feature Class tool and set the field map properties to change the field type.

Second, you could look into a free extension developed by Esri's Local Government team called X-Ray. X-Ray has several tools to manipulate fields in an existing feature class.

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