Provides access to members that modify an object class's extension properties.
Members
Name | Description | |
---|---|---|
AddGlobalID | Adds a global ID column to a class and populates it with GUIDs. | |
AlterAliasName | The alias name of the object class. | |
AlterClassExtensionCLSID | Changes the class extension COM class associated with this database class. | |
AlterClassExtensionProperties | Changes the class extension properties associated with this object class. | |
AlterDefaultValue | The default value of the object class field. | |
AlterDomain | The default domain of the object class field. | |
AlterFieldAliasName | The alias name of the object class field. | |
AlterFieldModelName | The model name of the object class field. | |
AlterInstanceCLSID | Changes the instance COM class associated with this database class. | |
AlterModelName | The model name of the object class. | |
DeleteGlobalID | Deletes the global ID column. | |
RegisterAsObjectClass | Registers this class with the database, assigning it a class id and creating an object id column. |
IClassSchemaEdit3.AddGlobalID Method
Adds a global ID column to a class and populates it with GUIDs.
Public Sub AddGlobalID ( _
ByVal FieldName As String _
)
public void AddGlobalID (
string FieldName
);
Remarks
Adds a column of type GlobalID to a Geodatabase table or feature class.
GlobalID****columns can be added or deleted to versioned as well as non-versioned ArcSDE tables. In ArcSDE, GlobalID columns can be added to tables that already have data. With Personal or File Geodatabases, however, the tables must have no rows otherwise an error is generated when trying to add the column.
Attempts to add these columns for non-supported data sources like shapefile and coverages fail with errors.
IClassSchemaEdit3.DeleteGlobalID Method
Deletes the global ID column.
Public Sub DeleteGlobalID ( _
)
public void DeleteGlobalID (
);
Remarks
Deletes a column of type GlobalID to a Geodatabse Tableor FeatureClass.
GlobalIDcolumns can be added or deleted to versioned as well as non-versioned ArcSDE tables.
Inherited Interfaces
Interfaces | Description |
---|---|
IClassSchemaEdit2 | Provides access to members that modify an object class's extension properties. |
IClassSchemaEdit | Provides access to member to modify an object class schema. |
Classes that implement IClassSchemaEdit3
Classes | Description |
---|---|
ObjectClass | Esri Object Class object. |
Remarks
This interface can be used to add and delete fields of type GlobalID to a feature class or table.
A GlobalID value is an ArcGIS assigned ID value for a row that is set when the row is created. The GlobalID value is guaranteed to be unique at the time of creation across all geodatabases. AnObjectID value is also an ArcGIS assigned ID value for a row that is assigned when the row is created. The ObjectID value is guaranteed to be unique across all rows and across all versions of the table containing the row. It is not guaranteed to be unique across tables within a geodatabase or between geodatabases.
The GlobalID value can be used to correlate rows in different geodatabases. Processes such as replication, copy, extract, checkout, checkin, data changes import, and data changes export preserve GlobalIDs. If two rows from different geodatabases have the same GlobalID, they are interpreted to be different representations of the same 'real world' entity or relationship. Applications that use GlobalIDs to match rows between different geodatabases may add additional criteria such as matching table names to factor in possible schema changes.
These fields are not editable and only one GlobalID column can exist per table. An alternative to adding a new GlobalID field is to register an existing GUID field as a GlobalID field, using the IClassSchemaEditEx interface.
GlobalID columns are required for replication and data exchange. Details on how to prepare data for replication can be found in the ArcGIS for Desktop web Help topic, Preparing data for replication. See the IReplicationAgent and IGeoDataServer interfaces, and the DataChangesExporter and DataChangesImporter****classes (all can be found in the Geodatabase Distributed library) for more information about the APIs for these processes.
As with other schema editing operations, an exclusive schema lock should be acquired for a dataset prior to adding or deleted a GlobalID field.