Enterprise geodatabases can contain a combination of geodatabase registered objects as well as tables or views that are not registered with the geodatabase. You can view or query these unregistered objects; however, for them to participate in geodatabase functionality, they must be registered with the geodatabase.
The following are examples of unregistered objects in a geodatabase:
- Views created outside ArcGIS or created with the Create Database View geoprocessing tool
- Tables created outside ArcGIS using a database client tool
- Tables or feature classes created using the Create Unregistered Feature Class or Create Unregistered Table tool
- Objects that existed in the database prior to being enabled as a geodatabase
Requirements to register tables and views with an enterprise geodatabase
For database tables, registering with the geodatabase allows editing and full participation in geodatabase functionality, such as subtypes, defining attribute domains on fields, participation in relationship classes, a topology, and more. For database views, registering with the geodatabase allows read-only participation in some geodatabase functionality such as defining geodatabase metadata on the view and the ability to be included in query-only feature services.
The table or view must meet the following criteria to register it with the geodatabase:
- The field data types used must map to ArcGIS data types. See DBMS data types supported in ArcGIS for a list of data types.
- The table or view can contain only one spatial field.
- If the table or view contains a spatial field, it can store only one geometry type (such as point, line, or polygon).
- If the table or view contains a spatial field, all features must use the same coordinate system.
- For the Object ID field, the geodatabase requires a field that is not null, unique, and an integer data type.
- There can be only one field with an ArcGIS data type of ObjectID in a table or view registered with the geodatabase.
- When registering a table, you can choose an existing field for the Object ID field, or ArcGIS will add a new field to the table if an existing field is not specified.
- Once a table is registered with the geodatabase, the geodatabase maintains the Object ID field by populating it with unique ID numbers.
If an existing field is chosen during registration for a table that contains records, be aware that if this field contains any null or duplicate values, this field's contents will be overwritten by ArcGIS starting with a value of 1. If the existing field values are unique and not null, the next value inserted by ArcGIS will be the maximum existing ID value +1. For example, if the maximum existing value in the field is 204, the next value ArcGIS inserts is 205.
- When registering a view, you must specify an existing field to be used as the Object ID field. As views are not editable from ArcGIS, the geodatabase will not maintain the Object ID field. The field used must be prepopulated with not null, unique numbers. If the field chosen contains existing values that are not unique, you may not see all records when viewing or querying the view from ArcGIS.
Register a table or view with the geodatabase
Follow these steps to register a table or view with the geodatabase using the Register with Geodatabase geoprocessing tool:
- In a new or existing project, in the Catalog pane, go to Databases and connect to the enterprise geodatabase that contains the table or view you want to register.
Connect as the owner of the table or view, as only the owner can register it with the geodatabase.
- On the Analysis tab, click the Tools button in the Geoprocessing group. Search or browse to the Register with Geodatabase tool in the Geodatabase Administration toolset of the Data Management toolbox.
This tool can also be opened directly from the table or view by right-clicking the table or view, choosing Manage, and clicking Register with Geodatabase.
- Using the Register with Geodatabase tool, specify the input dataset to register, and an ObjectID Field.
- To register a table, either choose an existing integer column to be used as the Object ID field or clear the Object ID Field and the tool will add an Object ID field to the table.
- To register a view, the Object ID Field parameter is required. Choose an existing integer field that contains not null, unique values to be used as the Object ID field.
- If the table or view contains a spatial field, provide the following information:
- Choose the spatial field name from the Shape Field drop-down list.
- From the Geometry Type drop-down list, choose the type of geometry to be stored in the shape field. This parameter will automatically be populated if the table or view contains existing records.
- Choose the coordinate system of the shape field from the Coordinate System drop-down list. This parameter will automatically be populated if the table or view contains existing records.
- Specify the spatial extent of the data in the table.
- Click Run to execute the tool and register the table or view with the geodatabase.