首页 > 代码库 > SQL Server 地理数据库中的系统表
SQL Server 地理数据库中的系统表
转自:http://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/002q00000080000000/
地理数据库的系统表可以强制地理数据库行为、存储有关地理数据库的信息以及追踪存储在地理数据库中的数据。
不得使用 ArcGIS 软件以外的任何其他软件更改系统表及其内容。不过,可以使用 SQL 查看系统表的内容。
GDB_ITEMRELATIONSHIPS
GDB_ITEMRELATIONSHIPS 表用于存储有关 GDB_ITEMS 表中各对象之间关联方法的信息。例如,此表会对要素数据集和复本进行跟踪。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
objectid | integer | 行的唯一标识符 | NOT NULL |
uuid | uniqueidentifier | 项的唯一标识符 | NOT NULL |
type | uniqueidentifier | 与 GDB_ITEMRELATIONSHIPTYPES 表中的 UUID 对应 | NOT NULL |
originid | uniqueidentifier | 与 GDB_ITEMS 表中的 UUID 对应 | NOT NULL |
destid | uniqueidentifier | 与 GDB_ITEMS 表中的 UUID 对应 | NOT NULL |
properties | integer | 项属性的位掩码 | |
attributes | xml | 表示属性对的属性集 |
GDB_ITEMRELATIONSHIPTYPES
GDB_ITEMRELATIONSHIPTYPES 表中包含有关 GDB_ITEMS 表中各对象之间存在的关系类型的数据。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
objectid | integer | 行的唯一标识符 | NOT NULL |
uuid | uniqueidentifier | 项的唯一标识符 | NOT NULL |
name | nvarchar(226) | 关系类型名称;包括下列值:
| NOT NULL |
forwardlabel | nvarchar(226) | 根据源项的上下文描述关系的标注 | |
backwardlabel | nvarchar(226) | 根据目标项的上下文描述关系的标注 | |
origItemtypeid | uniqueidentifier | 与 GDB_ITEMTYPES 表中的 UUID 对应 | |
destItemtypeid | uniqueidentifier | 与 GDB_ITEMTYPES 表中的 UUID 对应 | NOT NULL |
iscontainment | smallint | 指示源项的存在是否控制目标对象的存在 |
GDB_ITEMS
项是指在 ArcGIS 系统中使用的、可建立索引和进行搜索的任何对象,包括表、属性域、拓扑和网络。GDB_ITEMS 表中包含有关存储在地理数据库中的所有项的信息。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
objectid | integer | 行的唯一标识符 | NOT NULL |
uuid | uniqueidentifier | 项的唯一标识符 | NOT NULL |
type | uniqueidentifier | 与 GDB_ITEMTYPES 表中的 UUID 对应 | NOT NULL |
name | nvarchar(226) | 项(逻辑)的名称 | |
physicalname | nvarchar(226) | 项的全限定名称 | |
path | nvarchar(512) | 项的唯一相对路径 | |
url | nvarchar(255) | 项的关联 URL;用于目录服务 | NOT NULL |
properties | integer | 项属性的位掩码 | |
defaults | varbinary(max) | 独立于基础数据集的项目的相关信息,如序列化渲染器;要素类符号;或表格的列宽、颜色或字体 | NOT NULL |
datasetsubtype1 | integer | 指示表的要素类型 对于要素类和栅格目录来说,可能的值如下:
对于关系类,会存储关系类的基数。可能的值有:
对于拓扑,该列用于存储拓扑 ID。 | |
datasetsubtype2 | integer | 指示表的几何类型 对于要素类和栅格目录来说,可能的值如下:
对于关系类,该列中的值用于指示关系类是否属性化。可能的值有:0 = 非属性化,1 = 属性化。 | |
datasetinfo1 | nvarchar(255) | 存储要素类的形状字段名称 | |
datasetinfo2 | nvarchar(255) | 存储参与拓扑的要素类的信息 | |
definition | xml | 存储有关项的信息 | |
documentation | xml | 项的数据定义(元数据) | |
iteminfo | xml | 项的存储信息(如符号系统),与基础数据集相互独立 | |
shape | geometry | 项的空间范围 | NOT NULL |
GDB_ITEMTYPES
GDB_ITEMTYPES 表用于存储有关 GDB_ITEMS 表中每个项的对象类型的信息。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
objectid | integer | 行的唯一标识符 | NOT NULL |
uuid | uniqueidentifier | 项的唯一标识符 | NOT NULL |
parenttypeid | nvarchar(226) | 此表 (GDB_ITEMTYPES) 中 UUID 的外键 | NOT NULL |
name | uniqueidentifier | 项类型的名称;包括下列值:
| NOT NULL |
GDB_REPLICALOG
每次复本导出或导入更改时,有关此操作的信息都会存储在 GDB_REPLICALOG 表中。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
id | integer | 行的唯一标识符 | NOT NULL |
replicaid | integer | 与 GDB_ITEMS 表中的 objectid 字段对应 | NOT NULL |
event | integer | 指示是否已记录导入 (1) 或导出 (2) | NOT NULL |
errorcode | integer | 与事件相关联的错误代码;可以通过搜索“开发者帮助”来获得与错误相关的说明。如果事件执行成功,则会返回成功错误代码。 | NOT NULL |
logdate | datetime | 事件发生的日期 | NOT NULL |
sourcebegingen | integer | 一个事件中可导入或导出多代数据更改。该值指示所涉及的第一代更改的代编号。例如,如果已导入代 1 至代 3,则此字段将具有值 1。 | NOT NULL |
sourceendgen | integer | 一个事件中可导入或导出多代数据更改。该值指示所涉及的最后一代更改的代编号。例如,如果已导入代 1 至代 3,则此字段将具有值 3。 | NOT NULL |
targetgen | integer | 应用更改的代;该值可将更改应用于目标复本中的相应版本。 | NOT NULL |
GDB_TABLES_LAST_MODIFIED
通过客户端应用程序缓存 GDB_TABLES_LAST_MODIFIED 表时,可以使用它来验证地理数据库系统表。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
table_name | nvarchar(160) | 被修改的地理数据库系统表的名称 | NOT NULL |
last_modified_count | integer | 记录系统表的修改次数;随每次修改递增 | NOT NULL |
SDE_archives
SDE_archives 表用于存储地理数据库中存档的元数据。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
archiving_regid | integer | 业务表的注册 ID | NOT NULL |
history_regid | integer | 存档表的注册 ID | NOT NULL |
from_date | nvarchar(32) | 起始日期字段的名称 | NOT NULL |
to_date | nvarchar(32) | 结束日期字段的名称 | NOT NULL |
archive_date | bigint | 存档的创建日期 | NOT NULL |
archive_flags | bigint | 当前未使用 | NOT NULL |
SDE_column_registry
SDE_column_registry 表管理所有注册列。
如果使用 SQL 界面更改列定义,SDE_column_registry 表中的记录将不会更新。这可能导致之后的任何数据导出失败。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
database_name | nvarchar(32) | 存储包含此列的表的数据库的名称 | NOT NULL |
table_name | nvarchar(128) | 包含注册列的表的名称 | NOT NULL |
owner | nvarchar(32) | 包含此列的表的所有者(创建表的用户) | NOT NULL |
column_name | nvarchar(32) | 注册列的名称 | NOT NULL |
sde_type | integer | 列的数据类型的代码;可能的值及其定义如下:
| |
column_size | integer | 注册列值的长度 | |
decimal_digits | integer | 列值中小数点右侧的整数位数 | |
description | nvarchar(65) | 列类型的说明 | |
object_flags | integer | 存储列属性,包括:
| NOT NULL |
object_id | integer | 如果此列为栅格列,则设置为 SDE_raster_columns 表的 rastercolumn_id;如果此列为几何列,则设置为 SDE_layers 表的 layer_id |
SDE_compress_log
SDE_compress_log 表用于追踪对地理数据库执行的所有压缩操作。
此表将于首次压缩地理数据库时创建。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
compress_id | integer | 压缩操作的唯一标识符 | NOT NULL |
sde_id | integer | 压缩操作的进程标识号;引用 SDE_process_information 表中的 sde_id 列 | NOT NULL |
server_id | integer | 已执行或正在执行压缩操作的 ArcSDE 服务器进程的系统进程 ID | NOT NULL |
direct_connect | varchar(1) | 在客户端建立与地理数据库的直连时设置为 Y(是)或 N(否) | NOT NULL |
compress_start | datetime | 开始执行压缩操作的日期和时间 | NOT NULL |
start_state_count | integer | 开始压缩时存在的状态数 | NOT NULL |
compress_end | datetime | 完成压缩操作的日期和时间 | NOT NULL |
end_state_count | integer | 完成压缩操作后的剩余状态数 | NOT NULL |
compress_status | nvarchar(20) | 指示压缩操作是否成功完成 | NOT NULL |
SDE_dbtune
SDE_dbtune 表用于存储 ArcSDE 数据对象(如要素类)的配置关键字。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
keyword | nvarchar(32) | 配置关键字 | NOT NULL |
parameter | nvarchar(32) | 配置参数 | NOT NULL |
config_string | nvarchar(2048) | 配置参数的值 | NOT NULL |
SDE_geometry_columns
SDE_geometry_columns 表为符合 OpenGIS SQL 规范的每列类型几何都在数据库中存储一行。ArcSDE 将此表视为只限写入,因此仅在添加或删除 OpenGIS SQL 数据格式的图层时,才可通过 ArcSDE 访问此表。该表由 OpenGIS SQL 规范定义,还可以在其他应用程序中用不由 ArcSDE 托管的几何列更新该表。以符合 OpenGIS 标准的格式新建几何列时,完全限定的表名、列名和空间参考 ID (srid) 会添加到 SDE_geometry_columns 表中。
每个几何列都与一个空间参考系相关联。有关各空间参考系的信息均将存储在 SDE_spatial_references 表中。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
f_table_catalog | nvarchar(32) | 存储要素表的数据库 | NOT NULL |
f_table_schema | nvarchar(32) | 存储业务表的方案 | NOT NULL |
f_table_name | sysname | 数据集的业务表的名称 | NOT NULL |
f_geometry_column | nvarchar(32) | 业务表中几何列的名称 | NOT NULL |
g_table_catalog | nvarchar(32) | 存储几何列的数据库 | |
g_table_schema | nvarchar(32) | 存储包含几何列的表的方案 | NOT NULL |
g_table_name | sysname | 包含几何列的表的名称 | NOT NULL |
storage_type | integer | 几何的存储类型代码;可以表示 WKB、WKT 或 BINARY | |
geometry_type | integer | 列存储的几何类型的代码;可以表示点、多点、线串、多线串、面或多面 | |
coord_dimension | integer | 坐标维度编码:
| |
max_ppr | integer | 每行的最大点数(ArcSDE 不再使用) | |
srid | integer | 空间参考 ID | NOT NULL |
SDE_layer_locks
SDE_layer_locks 表用于记录要素类的锁。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
sde_id | integer | 已锁定图层的进程的进程标识号;SDE_process_information 表中 sde_id 列的外键 | NOT NULL |
layer_id | integer | SDE_layers 表中 layer_id 字段的外键 | NOT NULL |
autolock | character(1) | 如果对图层锁进行内部设置,则设置为 1;否则,如果图层锁由应用程序设置,则设置为 0。 | |
lock_type | character(1) | 图层锁的类型包括:
| NOT NULL |
minx | bigint | 用于在区域锁定期间定义区域内要素的边界框的最小 x 坐标 | |
miny | bigint | 用于在区域锁定期间定义区域内要素的边界框的最小 y 坐标 | |
maxx | bigint | 用于在区域锁定期间定义区域内要素的边界框的最大 x 坐标 | |
maxy | bigint | 用于在区域锁定期间定义区域内要素的边界框的最大 y 坐标 | |
lock_time | datetime | 获取图层锁的日期和时间 | NOT NULL |
SDE_layer_stats
SDE_layer_stats 表用于管理版本化和非版本化要素类的统计数据。这些统计数据在更新地理数据库统计数据时生成。某些地理处理工具使用统计数据来评估是否使用切片处理。
SDE_layer_stats 表通过图层 ID 与 SDE_layers 表进行关联。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
layer_id | integer | 图层的唯一标识符 | NOT NULL |
minx | float | 图层 x 坐标的最小值 | NOT NULL |
miny | float | 图层 y 坐标的最小值 | NOT NULL |
maxx | float | 图层 x 坐标的最大值 | NOT NULL |
maxy | float | 图层 y 坐标的最大值 | NOT NULL |
minz | float | 图层 z 坐标的最小值 | NOT NULL |
minm | float | 图层 m 坐标的最小值 | |
maxz | float | 图层 z 坐标的最大值 | |
maxm | float | 图层 m 坐标的最大值 | |
total_features | integer | 要素类中的要素总数 | NOT NULL |
total_points | integer | 要素类中的点(折点)数 | NOT NULL |
version_id | integer | 地理数据库版本的唯一标识符 | |
last_analyzed | datetime | 最近一次分析要素类和更新统计数据的日期和时间 | NOT NULL |
SDE_layers
SDE_layers 表用于记录与数据库中各要素类相关的数据。该信息帮助构建和维护空间索引、确保正确的形状类型、维护数据完整性以及存储坐标数据的空间参考。
数据库中的每个空间列对应该表中的一行。应用程序使用图层属性来查找可用的空间数据源。ArcSDE 使用这些图层属性来约束和验证空间列内容、索引几何值,以及正确创建和管理关联的 DBMS 表。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
layer_id | integer | 图层的唯一标识符 | NOT NULL |
description | nvarchar(65) | 用户定义的图层描述 | |
database_name | nvarchar(32) | 图层所在数据库的名称 | NOT NULL |
table_name | sysname | 图层的业务表的名称 | NOT NULL |
owner | nvarchar(32) | 创建了图层的用户 | NOT NULL |
spatial_column | nvarchar(32) | 图层中空间列的名称 | NOT NULL |
eflags | integer | 用于存储下列图层属性:
| NOT NULL |
layer_mask | integer | 用于存储与图层相关的附加内部属性 | NOT NULL |
gsize1 | float | 第一个空间格网的大小 | NOT NULL |
gsize2 | float | 第二个空间格网的大小 | NOT NULL |
gsize3 | float | 第三个空间格网的大小 | NOT NULL |
minx | float | 图层 x 坐标的最小值 | NOT NULL |
miny | float | 图层 y 坐标的最小值 | NOT NULL |
maxx | float | 图层 x 坐标的最大值 | NOT NULL |
maxy | float | 图层 y 坐标的最大值 | NOT NULL |
minz | float | 图层 z 坐标的最小值 | |
maxz | float | 图层 z 坐标的最大值 | |
minm | float | 图层 m 坐标的最小值 | |
maxm | float | 图层 m 坐标的最大值 | |
cdate | integer | 图层的创建日期 | NOT NULL |
layer_config | nvarchar(32) | 创建图层时指定的配置关键字 | |
optimal_array_size | integer | 几何矩阵缓冲区大小 | |
stats_date | 对于图层,日期统计数据放在最后计算 | ||
minimum_id | integer | 二进制图层要素 ID 的最小值 | |
srid | integer | 空间参考标识号;与 SDE_spatial_references 表中的 srid 值对应 | NOT NULL |
base_layer_id | integer | 存储图层(实际上是视图)的基础图层的 layer_id 值 | |
secondary_srid | integer | 用于存储高精度坐标参考,以便在数据从基本精度向高精度转换时对数据进行投影 |
SDE_lineages_modified
SDE_lineages_modified 表包含状态谱系 ID 及其最近一次修改的时间戳。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
lineage_name | bigint | 与 SDE_state_lineages 表中的 lineage_name 字段对应 | NOT NULL |
time_last_modified | datetime | 最近一次修改谱系的日期和时间 | NOT NULL |
SDE_locators
SDE_locators 表用于存储与定位器对象相关的信息。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
locator_id | integer | 定位器的唯一标识符 | NOT NULL |
name | nvarchar(32) | 定位器的名称 | NOT NULL |
owner | nvarchar(32) | 定位器所有者的用户名 | NOT NULL |
category | nvarchar(32) | 定位器的类别;地址定位器包含地址的类别值 | NOT NULL |
type | integer | 定位器类型;值的含义如下:
| NOT NULL |
description | nvarchar(64) | 定位器的描述 |
SDE_logfile_pool
无论使用何种类型的日志文件,SDE_logfile_pool 表一经创建即会保存在地理数据库中。有关此表和其他日志文件表的说明,请参阅 SQL Server 地理数据库中的日志文件表。
SDE_metadata
在向 DBMS 中的地理数据库添加定位器时,会在 SDE_metadata 表中为定位器的每个属性添加一行记录。SDE_layer_stats 表中的每一行定义定位器的一个属性。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
record_id | integer | 记录的唯一标识符 | NOT NULL |
object_database | nvarchar(32) | 定位器所在数据库的名称 | |
object_name | nvarchar(160) | 该属性所属的定位器的名称以及 SDE_locators 表中名称列的外键 | NOT NULL |
object_owner | nvarchar(32) | 记录的所有者的用户名 | NOT NULL |
object_type | integer | 对于定位器属性,该字段值始终为 2 | NOT NULL |
class_name | nvarchar(32) | 对于定位器属性,该字段值始终为 SDE_internal | |
property | nvarchar(32) | 定位器属性的名称 | |
prop_value | nvarchar(255) | 定位器属性的值 | |
description | nvarchar(65) | 不用于定位器属性 | |
creation_date | datetime | 定位器属性的创建日期和时间 | NOT NULL |
SDE_mvtables_modified
SDE_mvtables_modified 表用于维护在数据库的各种状态下修改的所有表的列表。该信息用于帮助快速确定在数据库的版本或状态之间是否存在冲突。
SDE_mvtables_modified 表用于保存一份按状态修改的所有表的记录。通过该信息,应用程序可在协调数据库中版本及状态之间的潜在冲突时,确定需要检查哪些表的更改情况。
每次在某个状态下修改要素类或表时,都会在 SDE_mvtables_modified 表中创建一个新条目。对两个版本进行协调时,此过程的第一个步骤是识别这两个版本引用的状态 - 当前编辑版本的状态和目标版本的状态。根据这些状态,通过追踪这两个版本的状态谱系可识别公共祖先状态。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
state_id | bigint | 表示此表修改状态的标识符;SDE_states 表中 state_id 字段的外键 | NOT NULL |
registration_id | integer | 在此状态下所修改表的注册 ID;SDE_table_registry 表的外键 | NOT NULL |
SDE_object_locks
SDE_object_locks 表用于记录地理数据库对象上的锁。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
sde_id | integer | 已锁定地理数据库对象的进程的进程标识号;引用 SDE_process_information 表中的 sde_id 列 | NOT NULL |
object_id | integer | GDB_ITEMS 表中受影响的数据集的 ID | NOT NULL |
object_type | integer | 对象锁类型,例如,由内部应用程序使用的 version,state_tree 锁 | NOT NULL |
application_id | integer | 应用程序唯一标识符 | NOT NULL |
autolock | character(1) | 如果对图层锁进行内部设置,则设置为 1;否则,如果图层锁由应用程序设置,则设置为 0 | NOT NULL |
lock_type | character(1) | 对象锁的类型:S = 共享,E = 独占 | NOT NULL |
lock_time | datetime | 获取对象锁的日期和时间 | NOT NULL |
SDE_process_information
SDE_process_information 表用于收集 ArcSDE 会话统计数据,例如会话处于活动状态时读取的记录数量和写入的记录数量。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
sde_id | integer | 进程标识号 | NOT NULL |
spid | integer | Gsrvr 进程 ID | NOT NULL |
server_id | integer | 服务器进程的操作系统进程 ID | NOT NULL |
start_time | datetime | 进程的启动日期和时间 | NOT NULL |
rcount | integer | 已处理的读取数量 | NOT NULL |
wcount | integer | 已处理的写入数量 | NOT NULL |
opcount | integer | 处理过程已执行的操作总数 | NOT NULL |
numlocks | integer | 处理过程当前已打开的锁数量 | NOT NULL |
fb_partial | integer | 处理过程所传送的部分要素的总数 | NOT NULL |
fb_count | integer | 处理过程加载的缓冲区的总数 | NOT NULL |
fb_fcount | integer | 处理过程缓冲的要素的总数 | NOT NULL |
fb_kbytes | integer | 处理过程缓冲的千字节总数 | NOT NULL |
owner | nvarchar(30) | 已连接用户的名称 | NOT NULL |
direct_connect | varchar(1) | 用于指示是否通过直连方式执行的处理过程:T(真)或 F(假) | NOT NULL |
sysname | nvarchar(32) | 当前在客户端计算机上运行的操作系统 | NOT NULL |
nodename | nvarchar(255) | 已连接的客户端计算机名称 | NOT NULL |
xdr_needed | varchar(1) | 用于记录客户端是否在使用 XDR 来与 gsrvr 通信:T(真)或 F(假) | NOT NULL |
table_name | nvarchar(95) | 会话时所使用的内部临时表的名称 | NOT NULL |
SDE_raster_columns
SDE_raster_columns 表中包含数据库中存储的栅格列的列表。
该表用于引用波段表、块表和辅助表中的栅格数据。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
rastercolumn_id | integer | 栅格列表的主键 | NOT NULL |
description | nvarchar(65) | 用户定义的栅格表描述 | |
database_name | nvarchar(32) | 栅格所在数据库的名称 | NOT NULL |
owner | nvarchar(32) | 栅格列的业务表的所有者 | NOT NULL |
table_name | sysname | 业务表名称 | NOT NULL |
raster_column | nvarchar(32) | 栅格列名称 | NOT NULL |
cdate | integer | 栅格列添加到业务表的日期 | NOT NULL |
config_keyword | nvarchar(32) | 创建栅格时指定的 DBTUNE 配置关键字;用于确定栅格的表和索引在数据库中的存储方式 | |
minimum_id | integer | 在栅格创建过程中定义,用于设定栅格表的 raster_id 列的值 | |
base_rastercolumn_id | integer | 当栅格列属于视图而非表的一部分时,它是视图基础表的 rastercolumn_id | NOT NULL |
rastercolumn_mask | integer | 对于地理数据库栅格,设置为 256 | NOT NULL |
srid | integer | 空间参考标识号,引用 SDE_spatial_references 表中的 srid |
SDE_server_config
SDE_server_config 表用于存储 ArcSDE 服务器配置参数。这些参数可定义 ArcSDE 软件使用内存的方式。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
prop_name | nvarchar(32) | 初始化参数名称 | NOT NULL |
char_prop_value | nvarchar(512) | 初始化参数的字符型值 | NOT NULL |
num_prop_value | integer | 初始化参数的整型值 | NOT NULL |
SDE_spatial_references
SDE_spatial_references 表中包含坐标系和从浮点型到整型的转换值。存储前,内部功能会利用空间参考系的参数将几何的每个浮点型坐标都转换和调整为 64 位正整数。进行检索时,这些坐标将恢复为其初始外部浮点型形式。
SDE_geometry_columns 表的每个几何列都与一个空间参考系相关联,与之相关的信息将存储在 SDE_spatial_references 表中。该表中各列均由 OpenGIS SQL 规范(srid、srtext、auth_name 和 auth_srid)定义,并且 ArcSDE 需要通过这些列进行内部坐标转换。空间参考系可用于标识几何的坐标系,并为几何的数字坐标值赋予意义。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
srid | integer | 空间参考标识符 | NOT NULL |
description | nvarchar(64) | 空间参考系统的文本描述 | |
auth_name | nvarchar(255) | 该参考系所引用标准所属组织的名称;例如,POSC 便属于有效 auth_name | |
auth_srid | integer | 由 auth_name 中所引用的授权机构定义的空间参考系的 ID | |
falsex | float | 将地面坐标转换为内部系统坐标时使用的 x 偏移 | NOT NULL |
falsey | float | 将地面坐标转换为内部系统坐标时使用的 y 偏移 | NOT NULL |
xyunits | float | 将地面坐标转换为内部系统坐标时应用的比例因子 | NOT NULL |
falsez | float | 将 z 值转换为内部系统坐标时使用的 z 偏移 | NOT NULL |
zunits | float | 将 z 值转换为内部系统坐标时使用的比例因子 | NOT NULL |
falsem | float | 将测量值转换为内部系统坐标时使用的测量偏移 | NOT NULL |
munits | float | 将测量值转换为内部系统坐标时使用的比例因子 | NOT NULL |
xycluster_tol | float | 用于拓扑处理的 xy 坐标拓扑容差 | |
zcluster_tol | float | 用于拓扑处理的 z 坐标拓扑容差 | |
mcluster_tol | float | 用于拓扑处理的测量值拓扑容差 | |
object_flags | integer | 存储对象属性(包括精度) | NOT NULL |
srtext | nvarchar(1024) | 在 ArcGIS 界面中显示的空间参考的名称和描述符 | NOT NULL |
SDE_state_lineages
SDE_state_lineages 表用于存储各状态的谱系。会为每个版本创建一个新的谱系名称。每当添加一个状态时,都会添加谱系名称和状态 ID。当添加的状态是新版本时,还会添加父状态的祖先状态谱系(包括该谱系名称)。
要返回某个版本的正确视图,通过查询其状态谱系可识别每次对该版本进行更改时所记录的所有状态。通过此状态列表,可确定正确表示版本的表行。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
lineage_name | bigint | 用于描述状态的名称 | NOT NULL |
lineage_id | bigint | 各状态的唯一标识符 | NOT NULL |
SDE_state_locks
SDE_state_locks 表用于维护版本状态锁。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
sde_id | integer | 已锁定状态的进程的进程标识号;引用 SDE_process_information 表中的 sde_id 列 | NOT NULL |
state_id | bigint | 被锁定的状态的标识符 | NOT NULL |
autolock | character(1) | 如果对图层锁进行内部设置,则设置为 1;否则,如果图层锁由应用程序设置,则设置为 0 | NOT NULL |
lock_type | character(1) | 状态锁的类型;可能的类型包括:
| NOT NULL |
lock_time | datetime | 获取状态锁的日期和时间 | NOT NULL |
SDE_states
SDE_states 表中包含状态元数据。它指示一段时间内创建的状态,还有每个状态的创建时间、关闭时间、父状态以及所有者。
每创建一个状态,都会指定状态 ID 并且会在该表中添加一条记录。
字段名 | 字段类型 | 讨论 | 是否允许为空 |
---|---|---|---|
state_id | bigint | 由 ArcSDE 指定的该状态的唯一标识符 | NOT NULL |
owner | nvarchar(32) | 创建该状态的用户 | NOT NULL |
creation_time | datetime | 该状态的创建日期和时间 | NOT NULL |
closing_time | datetime | 该状态的关闭日期和时间 | |
parent_state_id | bigint | 父状态的 state_id | NOT NULL |
lineage_name | bigint | 引用存储在 SDE_state_lineages 表中的状态的谱系名称 | NOT NULL |
SDE_table_locks
SDE_table_locks 表用于维护 ArcSDE 注册的表上的锁。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
sde_id | integer | 已锁定表的进程的进程标识号;引用 SDE_process_information 表中的 sde_id 列 | NOT NULL |
registration_id | integer | SDE_table_registry 表中 registration_id 字段的外键 | NOT NULL |
lock_type | character(1) | 表锁的类型
| NOT NULL |
lock_time | datetime | 获取表锁的日期和时间 | NOT NULL |
SDE_table_registry
SDE_table_registry 表用于管理所有注册的表。这些值包括 ID、表名、所有者和描述。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
registration_id | integer | 该表注册的唯一标识符 | NOT NULL |
database_name | nvarchar(32) | 该表所在数据库的名称 | NOT NULL |
table_name | sysname | 该表的名称 | NOT NULL |
owner | nvarchar(32) | 创建该表的用户 | NOT NULL |
rowid_column | nvarchar(32) | 该表中 ObjectID 列的名称 | NOT NULL |
description | nvarchar(65) | 用户定义的对该表的文本描述 | |
object_flags | integer | 用于存储该表的注册属性,包括:
| NOT NULL |
registration_date | integer | 该表注册到 ArcSDE 的日期 | NOT NULL |
config_keyword | nvarchar(32) | 该表注册到 ArcSDE 时指定的配置关键字;确定该表及其索引在数据库中的存储方式 | |
minimum_id | integer | 该表的最小 row_id 值 | |
imv_view_name | nvarchar(32) | 指定表的版本化视图的名称 |
SDE_tables_modified
SDE_tables_modified 表用于记录对系统表做出更改的时间。该信息用于避免对无改动的表的不必要读取。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
table_name | sysname | 修改的 ArcSDE 系统表的名称 | NOT NULL |
time_last_modified | datetime | 修改此表的日期和时间 | NOT NULL |
SDE_version
SDE_version 表用于维护与数据库配合使用的 ArcSDE 的版本信息。该表包含 ArcSDE 最近一个安装版本的具体版本标识。
SDE_version 表和其他 ArcSDE 系统表在安装新版本 ArcSDE 之后会进行更新。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
major | integer | 主版本号;例如,ArcSDE 9.3 的主版本号为 9。 | NOT NULL |
minor | integer | 次版本号;例如,ArcSDE 9.3 的次版本号为 3。 | NOT NULL |
bugfix | integer | 修补程序或补丁包的安装数量 | NOT NULL |
description | nvarchar(96) | 系统定义的 ArcSDE 安装描述 | NOT NULL |
release | integer | 完整版本号,例如 92009 | NOT NULL |
sdesvr_rel_low | integer | 指明运行该实例所允许的最低服务器版本号 | NOT NULL |
SDE_versions
SDE_versions 表包含与版本化地理数据库有关的信息。
每个版本均由名称、所有者、描述以及关联数据库的状态共同标识。此表定义数据库包含的不同版本,并为用户提供一份可用版本的列表。应用程序会使用这些版本访问特定的数据库状态。版本名称和 ID 是唯一的。
当 ArcSDE 首次创建 SDE_versions 表时,会将一个默认版本插入到该表中。此默认版本的名称为 DEFAULT,由 ArcSDE 管理员所有并被授予 PUBLIC 访问权限。初始 state_id 设为 0,并且描述字符串会读取“实例默认版本”。由于默认版本已被授予 PUBLIC 访问权限,因此任何用户都可以更改默认状态。
ArcGIS 要求存在默认版本。如果您无意中删除了默认版本,可以使用以下 SQL INSERT 语句来代替它:
INSERT INTO sde_versions VALUES
(‘DEFAULT‘,‘SDE‘,1,1,0,‘Instance default version.‘,null,null,null,GETDATE())
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
name | nvarchar(64) | 版本的唯一名称 | NOT NULL |
owner | nvarchar(32) | 版本所有者 | NOT NULL |
version_id | integer | 版本的唯一标识符 | NOT NULL |
status | integer | 指定该版本是否可由任何用户访问,或者说是否只能由所有者进行私人访问 | NOT NULL |
state_id | bigint | 该版本指向的数据库状态的标识符 | NOT NULL |
description | nvarchar(64) | 可选的版本文本描述 | |
parent_name | nvarchar(64) | 该版本的父版本名称 | |
parent_owner | nvarchar(32) | 父版本的所有者名称 | |
parent_version_id | integer | 该版本的父版本标识符 | |
creation_time | datetime | 该版本的创建日期和时间 | NOT NULL |
SDE_xml_columns
每当向业务表中添加一个 ArcSDE XML 列,就会向 XML 列的表中添加一行记录。该表在每个 ArcSDE 地理数据库中都会出现一次。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
column_id | integer | XML 列的标识符;在创建 XML 列时由 ArcSDE 指定 | NOT NULL |
registration_id | integer | 包含 XML 列的业务表的标识符;与 SDE_table 注册表中的 id 列对应 | NOT NULL |
column_name | nvarchar(32) | 业务表中 XML 列的名称 | NOT NULL |
index_id | integer | 与 XML 列关联的 XPath 索引的标识符(如果存在);XML 索引表的外键 | |
minimum_id | integer | 在业务表的 XML 列中使用的初始编号值,用于标识各 XML 文档 | |
config_keyword | nvarchar(32) | DBTUNE 配置关键字,其中包含的参数可确定 XML 文档表和 XML XPath 索引表以及基于这些表创建的文本索引在数据库中的定义方式 | |
xflags | integer | 该值用于指明 XML 文档表中的原始文档是以压缩形式存储还是以解压缩形式存储;默认设置为以压缩形式存储(压缩文档可提供更佳的性能。) | NOT NULL |
SDE_xml_index_tags
ArcSDE XML 列可以选择性地使用 XPath 索引,这使您可以对每个文档中的特定 XML 元素或属性的内容进行搜索。有关每个 XPath 索引中包含或排除哪些元素和属性都在此表中进行定义。
该表在每个 ArcSDE 数据库中都会出现一次。该表为与 ArcSDE XML 列的 XPath 索引所关联的每个 XPath 都提供一行空间。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
index_id | integer | 与 ArcSDE XML 列关联的 XPath 索引的标识符(如果存在);XML 索引表的外键 | NOT NULL |
tag_id | integer | XPath 或标记的标识符 | NOT NULL |
tag_name | nvarchar(1024) | 对 XML 文档中可能出现的 XML 元素或属性进行标识的绝对 XPath (例如,/metadata/mdDateSt 用于标识 XML 元素,/metadata/dataIdInfo/tpCat/TopicCatCd/@value 用于标识 XML 属性。 这些 XPath 不得使用星号 [*] 来指代一组 XML 元素或属性,每个元素或属性都按照此表中指定的 XPath 进行精确匹配。) | NOT NULL |
data_type | integer | 该值用于指示 XML 元素或属性是否将以字符串或数字形式建立索引
| NOT NULL |
tag_alias | integer | 可以用来标识 XPath 的数字 (例如,Z39.50 通信协议使用数字代码指代可以搜索的内容。此列不适用于 ArcIMS Z39.50 连接器。) | |
description | nvarchar(64) | 对 XML 元素或属性中应包含的内容进行标识的文本 | |
is_excluded | integer | 该值用于指示 XPath 索引中是包含还是排除 XML 元素
| NOT NULL |
SDE_xml_indexes
该表在每个 ArcSDE 数据库中都会出现一次。该表为具有 XPath 索引的每个 ArcSDE XML 列都提供了一行空间。
字段名 | 字段类型 | 描述 | 是否允许为空 |
---|---|---|---|
index_id | integer | XPath 索引的标识符 | NOT NULL |
index_name | nvarchar(32) | XPath 索引的名称 对于与 ArcIMS 元数据服务相关联的 XPath 索引,名称为 ims_xml#,其中 # 是元数据服务业务表中 XML 列的标识符。 | NOT NULL |
owner | nvarchar(32) | 拥有 XML 列的数据库用户 对于 ArcIMS 元数据服务,该字段指代在服务的 ArcXML 配置文件中指定的用户。 | NOT NULL |
index_type | integer | 该值用于指示 XPath 索引的类型
| NOT NULL |
description | nvarchar(64) | 用于标识 XPath 索引的文本 如果已使用索引定义文件创建索引,则可以在文件顶部指定索引描述。 |