DB2 中地理数据库 (geodatabase) 内的要素类

要素类是具有相同几何类型(点、线、面、多点、注记、尺寸或多面体)的地理要素集合。例如,可将表示某条铁路沿线所有车站的点存储于一个要素类中。而在另一个要素类中,可存储表示所有铁轨的线。

本主题介绍要素类在目录窗口、数据库管理系统 (DBMS) 和 XML 文档中的显示方式。

ArcGIS Desktop 中的要素类

在 ArcGIS Desktop 中可创建七种要素类:点、多点、线、面、注记、尺寸和多面体。

根据图标可在目录树中看出要素类的类型。下表显示了每种要素类的图标。

要素类图标

要素类类型

点或多点要素类图标

点或多点

线要素类图标

线

面要素类图标

注记要素类图标

注记

尺寸要素类图标

尺寸

多面体要素类图标

多面体

DB2 中,目录树中显示的要素类名称包括要素类所在数据库的名称、拥有该要素类的用户的名称以及要素类本身的名称。

例如,如果名为 parcels 的要素类为用户 RJP 所有,且其所在的地理数据库名为 geodata,则该要素类在目录树中的名称为 geodata.RJP.parcels。

有关不同类型要素类的说明,请参见要素类基础知识

IBM DB2 数据库中的要素类

存储在 DB2 数据库内的地理数据库中的要素类包含用于存储几何数据的 ST_Geometry 列。这意味着 ST_Geometry 列将添加到要素类的业务表中。

ST_Geometry 为非实例化抽象超类,其子类可实例化。有关详细信息,请参见什么是 ST_Geometry 存储类型?

使用 ST_Geometry 存储通过 ArcGIS 创建要素类时,将在所有者的方案中创建带 ST_Geometry 列的业务表。此外,记录还将添加到 sde 用户方案中的 LAYERSTABLE_REGISTRYsde_geometry_columnsCOLUMN_REGISTRYsde_spatial_references(如果定义了空间参考)和 GDB_ITEMS 表中以追踪要素类信息。sde 用户方案中的 GDB_ITEMTYPES 表定义数据类型,此例中为要素类。

所有要素类都有一个存储属性信息、对象 ID 和 Shape 字段的基表(又称业务表)。对象 ID 和 Shape 字段可以有不同的名称,但它们必须位于要素类的基表中。

提示提示:

注记和尺寸注记要素类的基表中另外还有一些必填字段。有关这些字段的列表,请参阅管理注记要素类属性尺寸注记要素属性

加载了数据后,数据库中将出现多个 i 表和存储过程。这些存储过程和 i 表用于为要素类生成要素 ID。i 表的名称中包含一个数字。该数字对应 TABLE_REGISTRY 表中要素类的 REGISTRATION_ID。强烈建议不要对这些表和存储过程进行编辑,而且也不支持这种编辑操作。

View a diagram of a feature class in DB2.

需要使用 Adobe Acrobat Reader 才能打开此文件。

虚线表示各列之间的隐含关系;实线表示各列之间明确定义的关系。

ST_GEOMETRY_COLUMNS 表和 ST_SPATIAL_REFERENCE_SYSTEMS 表实际上是视图,并用灰色进行描述来加以区分。

XML 文档中存储的要素类

要素类在 DataElement 元素中进行定义。要素类的 DataElement 标记设置为 esri:DEFeatureClass 类型。要素类 DataElement 中还有定义要素类的其他元素,例如 Field、Domain、ConfigurationKeyword 和 SpatialReference 元素。

以下是 Parcels 要素类的 XML 文档的一小部分内容:

<DataElement xsi:type="esri:DEFeatureClass">
  <CatalogPath>/V=sde.DEFAULT/FC=sdedb2.GDB.Parcels</CatalogPath>
  <Name>sdedb2.GDB.Parcels</Name>
  <DatasetType>esriDTFeatureClass</DatasetType>
  <DSID>27</DSID>
  <Versioned>false</Versioned>
  <CanVersion>true</CanVersion>
  <ConfigurationKeyword/>
  <HasOID>true</HasOID>
  <OIDFieldName>objectid</OIDFieldName>
  <Fields xsi:type="esri:Fields">
    <FieldArray xsi:type="esri:ArrayOfField">
      <Field xsi:type="esri:Field">
        <Name>objectid</Name>
        <Type>esriFieldTypeOID</Type>
        <IsNullable>false</IsNullable>
        <Length>4</Length>
        <Precision>10</Precision>
        <Scale>0</Scale>
        <Required>true</Required>
        <Editable>false</Editable>
        <AliasName>OBJECTID</AliasName>
        <ModelName>OBJECTID</ModelName>
      </Field>

用于定义要素类的所有其他元素

</DataElement>

7/10/2012