Home    |    Concepts   |   API   |   Samples
Concepts > Schema Objects > Tables > Types of Tables
User Tables
With the exception of the business table, these tables should be accessed through the application interface provided either by ArcGIS or an ArcSDE C API program. Direct access to the nonbusiness tables via the SQL interface is not encouraged.

Business tables

The business table is an existing DBMS table that ArcSDE spatially enables by adding a shape column. A spatial column is also known as a layer. Information about each layer (or spatial column) is maintained in the LAYERS table. This same table is called SDE_layers in the SQL Server and PostgreSQL implementations.

The data type of the shape column varies depending on the implementation of ArcSDE.

Binary schema implementation

Under this implementation, the integer shape column contains feature identifiers that uniquely reference the shape data. The feature ID joins the business table with the associated feature and spatial index tables managed by ArcSDE. This implementation is available in geodatabases stored in Oracle or SQL Server DBMSs.

A trigger is defined on the spatially enabled business table to maintain the relationship between records in the business table and the feature table. The trigger is:

TRIGGER SPCOL_DEL_CASCADE_<layer>
AFTER DELETE OR UPDATE OF <SPATIAL_COL> ON business_table
IF DELETING THEN
DELETE FROM F<layer>
WHERE F<layer>.fid = old.<SPATIAL_COL>
DELETE FROM S<layer>
WHERE S<layer>.fid = old.<SPATIAL_COL>

IF UPDATING AND new.<SPATIAL_COL> IS NULL THEN
DELETE FROM F<layer>
WHERE F<layer>.fid = old.<SPATIAL_COL>
DELETE FROM S<layer>
WHERE S<layer>.fid = old.<SPATIAL_COL>

IF UPDATING AND new.<SPATIAL_COL> != old.<SPATIAL_COL> THEN
raise_application_error
(-20013,'Invalid update of SDE Spatial Column

Feature table

Under the binary schema implementation, the Feature table stores the geometric shapes for each feature. This table is identified by the spatial column layer number using the name F<layer_id>.

The relationship between the business table and the feature table is managed through the FID. This key, which is maintained by ArcSDE, is unique for the spatial column.

NAME DATA TYPE NULL?
Fid SE_INTEGER_TYPE NOT NULL
numofpts SE_INTEGER_TYPE NOT NULL
entity SE_SMALLINT_TYPE NOT NULL
eminx SE_FLOAT_TYPE(64) NOT NULL
eminy SE_FLOAT_TYPE(64) NOT NULL
emaxx SE_FLOAT_TYPE(64) NOT NULL
emaxy SE_FLOAT_TYPE(64) NOT NULL
eminz SE_FLOAT_TYPE(64) NULL
emaxz SE_FLOAT_TYPE(64) NULL
min_measure SE_FLOAT_TYPE(64) NULL
max_measure SE_FLOAT_TYPE(64) NULL
area SE_FLOAT_TYPE(64) NOT NULL
len SE_FLOAT_TYPE(64) NOT NULL
points SE_BLOB_TYPE NULL

The feature table stores the shape geometry and has several additional columns to support ArcSDE query processing.

For storing the geometry:

  • points (SE_BLOB)—Contains the byte stream of point coordinates that define the shapes geometry
For query processing:
  • area (SE_FLOAT_TYPE)—The area of the shape
  • len (SE_FLOAT_TYPE)—The length or perimeter of the shape
  • eminx, eminy, emaxx, emaxy (SE_FLOAT_TYPE)—The envelope of the shape
  • eminz (SE_FLOAT_TYPE)—The minimum Z value in the shape
  • emaxz (SE_FLOAT_TYPE)—The maximum Z value in the shape
  • min_measure (SE_FLOAT_TYPE)—The minimum measure value in the shape
  • max_measure (SE_FLOAT_TYPE)—The maximum measure value in the shape
For internal ArcSDE use:
  • fid (SE_INTEGER_TYPE)—Contains the unique ID that joins the feature table to the business table
  • entity (SE_INTEGER_TYPE)—The type of geometric feature stored in the shape column (e.g., point, linestring)
  • numofpts (SE_INTEGER_TYPE)—The number of points defining the shape

As shapes are inserted or updated, the extents, numofpts, and so on, are recalculated automatically. The points column contains the coordinate array for the shape in a compressed integer format.

Spatial types implementation

For information on the ST_Geometry type implementation, see the ArcGIS Server or Desktop help topics The ST_Geometry type and the DBMS-specific topics The DB2 Spatial Extender geometry type, The Informix Spatial DataBlade geometry type, ST_Geometry storage in Oracle, and ST_Geometry storage in PostgreSQL.

For information on other spatial type implementations, such as Oracle Spatial, Microsoft Geometry or Geography, or PostGIS, consult the documentation provided by Oracle, Microsoft, and PostGIS respectively.

feedback | privacy | legal