Not all collections support possibility to add and remove objects. For some collections, an object will be added to the collection at its creation (e.g., the GeoDatabase object is added automatically to the GDBEngine::GeoDatabases collection when GDB is opened by the GDBEngine::OpenGDB method). The open mode of GDB, which is direct or indirect owner of collection, influences the possibility to add and remove an object as well (e.g., adding or removing the Table object to the GeoDatabase::Tables collection (from the collection) is impossible if GDB, the owner of collection, is opened on shared access). Objects are removed from some collections when they are closed by the Close method (e.g., the GeoDatabase object is removed from the GDBEngine::GeoDatabases collection when GDB is closed by the GeoDatabase::Close method). For some collections, the set of objects is formed by kernel of GIS and such collections do not support possibility to add or remove objects (e.g., the GeoDatabase::Sessions collection contains the Session objects which are descriptors of shared access sessions). The table below defines possibility to add and remove objects by the Append and Delete methods of collections.
Collection | Adding | Removing |
Possible if the DataLink::LinkCategory property returns gdbLinkIndirect. | Possible if the DataLink::LinkCategory property returns gdbLinkIndirect. | |
Possible | Possible | |
Impossible | Impossible | |
Impossible | Possible | |
Possible if a theme is cataloged and a feature belongs to GDB map layer. | Possible | |
Possible when exclusive access to GDB. When shared access, possible if a link descriptor is based on a table or query that belongs to an uncataloged external database. | Possible when exclusive access to GDB. When shared access, possible if a link descriptor is based on a table or query that belongs to an uncataloged external database. | |
Possible if a layer, the owner of feature type, belongs to the collection Theme::Layers. | Possible if a layer, the owner of feature type, belongs to the collection Theme::Layers. | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Possible | Possible. When shared access to GDB, possible for uncataloged external databases only. An external database must be closed. | |
Impossible | Impossible | |
Possible | Possible | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Possible | Possible | |
Impossible | Impossible | |
Impossible | Impossible | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Possible | Possible | |
Possible | Possible | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Possible | Possible | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Impossible | Impossible | |
Impossible | Possible for calculated fields only | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Impossible | Impossible | |
Possible for recordsets based on external tables or queries only. | Impossible | |
Impossible | Impossible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible | |
Impossible | Impossible | |
Possible when exclusive access to GDB | Possible when exclusive access to GDB | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Impossible | Impossible | |
Possible | Possible | |
Possible | Possible | |
Possible | Possible |