I am working with an oracle11g database and I would like to add a new column to a feature class stored in this database. I would like to use the sdelayer command but can any one of you give me a tip whether I am doing this correct

sdelayer -o add - l TABLE,COLUMN -e p  -i sde:oracle11g -s test -D oracle11g - u gis_test 
-p gis@test

One more thing, I would like to specify the data type for my new column. Where should I put it in my command?

1 Answer 1


You can't use 'sdelayer' for this purpose. The sole purpose of that utility is to manipulate layers (the geometry column), and the '-o add' option only adds geometry columns (max one per table).

If you are working with "feature classes" (the ArcGIS name for layers) using Desktop, then you would be better served by using ArcGIS to add the column. This will prevent issues that would be caused by using SQL to add unsupported column types, or failing to add the corresponding column to the version and/or archive history tables (if present). You would, of course, need to be connected as the table owner, and the table must not be locked by an application, and the Desktop license level can't be ArcView (now known as Basic).

If you do use SQL to modify a table registered with ArcSDE, it is important to execute 'sdetable -o describe' on the altered table, as the owner, to make sure the SDE.COLUMN_REGISTRY table is updated. Altering a table which has been registered with the geodatabase and participates in versioning or history or other ArcGIS behaviors using other than ArcGIS is not recommended.


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.