com.esri.arcgis.geodatabase
Interface IIndexEdit

All Superinterfaces:
IIndex, Serializable
All Known Implementing Classes:
Index, XMLIndex

public interface IIndexEdit
extends IIndex, Serializable

Provides access to members that modify the index.

Remarks

The IIndexEdit interface is used when creating new indexes. You cannot use IIndexEdit to modify an existing index—to do this, delete and re-create it. IIndexEdit operates in a similar way to IFieldEdit.

When changing indexes on a table in a multi-user environment, you should first gain an exclusive schema lock on the table. See the section on ISchemaLock for more details.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

See Also:
IField

Method Summary
 void setFieldsByRef(IFields rhs1)
          The fields collection for this index.
 void setIsAscending(boolean rhs1)
          Indicates if the index is to be ascending.
 void setIsUnique(boolean rhs1)
          Indicates if the index is to be unique.
 void setName(String rhs1)
          The name of the index.
 
Methods inherited from interface com.esri.arcgis.geodatabase.IIndex
getFields, getName, isAscending, isUnique
 

Method Detail

setName

void setName(String rhs1)
             throws IOException,
                    AutomationException
The name of the index.

Remarks

ArcGIS imposes a limit on the length of 16 characters on the length of attribute index names. This limit is based on the smallest allowable length within supported databases in order to facilitate distribution and sharing of data between different geodatabases.

Giving a shapefile index a name will apply the name to the index in memory, but the name will not be persisted to disk. On subsequent occasions when the indexes are opened, they will have system-defined names.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsUnique

void setIsUnique(boolean rhs1)
                 throws IOException,
                        AutomationException
Indicates if the index is to be unique.

Remarks

Only non-versioned feature classes and tables can have unique indexes.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setIsAscending

void setIsAscending(boolean rhs1)
                    throws IOException,
                           AutomationException
Indicates if the index is to be ascending.

Remarks

Whether you can add an index that is ascending is dependent on the DBMS.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rhs1 - The rhs1 (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFieldsByRef

void setFieldsByRef(IFields rhs1)
                    throws IOException,
                           AutomationException
The fields collection for this index.

Remarks

The maximum number of fields in the fields collection of an index is DBMS dependent.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
rhs1 - A reference to a com.esri.arcgis.geodatabase.IFields (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.