移动地理数据库

移动地理数据库 (.geodatabase) 是磁盘上单个文件中包含的各种类型 GIS 数据集的集合,可以存储、查询和管理空间数据和非空间数据。 移动地理数据库将自动提供给所有 ArcGIS Pro 用户,并可以使用多种方法创建,包括创建移动地理数据库地理处理工具,以及通过在工程文件夹中创建移动地理数据库。 有关创建移动地理数据库的步骤和其他选项的信息,请参阅创建移动地理数据库

优势

移动地理数据库存储在 SQLite 数据库中,具有以下优势:

  • SQLite 是一个应用领域广泛、稳定且值得信任的数据库。
  • SQLite 是公共域中的开源数据库,因此不需要许可。
  • SQLite 数据库受跨平台支持,并且存储在磁盘上的单个文件中,从而使其具有可移植性和高效的数据交换格式。
  • SQLite 是一个功能齐全的关系数据库,允许查询和报告工作流,并支持诸如视图和索引等操作。
  • SQLite 可互操作,并且在移动应用程序开发中普遍存在。

移动地理数据库使用 Esri ST_Geometry 空间类型。 可以使用 SQL 客户端通过 SQL 语句来访问空间数据,这些 SQL 语句实现了 ISO SQL/MM 空间标准和 OGC 的简单要素规范。 如果具有数据的 SQL 访问权限,则可以使用其他应用程序来查询或生成有关在移动地理数据库中存储的数据的报表。 有关如何启用 ST_Geometry 扩展模块的信息,请参阅将 ST_Geometry 加载到移动地理数据库以进行 SQL 访问

警告:

使用 SQL 来更改或编辑在移动地理数据库内存储的数据集的数据或架构可能会损坏您的架构。

移动地理数据库是 ArcGIS ProArcGIS Runtime 之间互操作工作流的基础。 将来,移动地理数据库将在 ArcGIS Runtime 和移动应用程序的 Esri 套件中启用增强的工作流和应用程序。

提示:

所有移动地理数据库都存储在 SQLite 数据库中,但并非所有 SQLite 数据库都是移动地理数据库。

数据集

移动地理数据库包含系统表、索引、触发器和视图,这些提供了地理数据库功能以与简单要素一起使用,例如点、多点、多面体、多边形、线几何和真实曲线。

您添加到移动地理数据库的数据可以存储在以下类型的数据集中:

  • 要素类
  • 要素数据集
  • 表(非空间)
注:

有关要素类和表名长度以及其他大小限制的信息,请参阅移动地理数据库的大小和名称限制

移动地理数据库支持以下地理数据库行为:

  • 注记
  • 附件
  • 属性规则(实时计算和约束规则)
  • 条件值
  • 尺寸注记
  • 编辑者追踪
  • 与要素关联的注记
  • 连接
  • 关系类
  • 子类型
  • 视图

属性

可以从 ArcGIS Pro 中的内容目录窗格访问移动地理数据库中的数据集属性。 要素类属性对话框用于设置别名以及空间和属性索引,并在目录窗格中进行管理。

要打开要素类属性对话框,请在目录窗格或目录视图中右键单击表或要素类,然后单击属性。 在属性对话框中,某些属性是可编辑的,而其他属性是只读的。

移动地理数据库中的要素类属性

数据管理

您只能在移动地理数据库上执行一些管理任务,包括创建重命名移动地理数据库。 移动地理数据库不包含身份验证或授权功能,一次只能供一个人或一个应用程序使用,并且在编辑时支持撤消和恢复。 地理数据库级别的任何操作只能通过 ArcGIS 来执行。 有关在移动地理数据库中进行编辑时如何应用锁的详细信息,请参阅移动地理数据库和锁定进程

移动地理数据库 (.geodatabase) 以 SQLite 为基础构建而成。SQLite 是独立的数据库文件格式,将数据库存储在磁盘上的单个文件中,该文件可以位于目录中的任何位置。 此单个文件最多可容纳 2 TB 的数据,易于移植,在各个平台上均受支持。

SQLite 数据库文件有两个名称:

  • 物理文件名,这是数据库文件名的路径。
  • 逻辑名称,即与 SQL 命令一起使用的 SQLite 数据库名称,无论数据库文件名如何,其名称均为 main。
移动地理数据库中的表属性

SQLite 数据库路径由文件路径、数据库名称和文件扩展名组成。

例如,如果您使用创建移动地理数据库地理处理工具来创建一个名为 Project1_data 的移动地理数据库,并将其存储在 Microsoft Windows 操作系统的 C:\ 盘的子文件夹中,则该移动地理数据库的数据库路径将类似于以下内容:C:\GIS_Data\Projects\Mobile_Geodatabase\Project1_data.geodatabase

由于 SQLite 是关系数据库,因此您可以在第三方软件中使用 SQL 来访问移动地理数据库的内容。 使用 SQL 访问的 SQLite 数据库使用逻辑数据库名称。 使用 SQL 访问 SQLite 数据库时,名为 main 的数据库是为主数据库保留的,并且无论物理数据库文件名如何都可以使用该数据库。 SQLite 中的限定表名称将为 main.<表名称>,并且 SQLite 中的限定列名称将采用 <表名称>.<列名称> 或 <数据库名称>.<表名称>.<列名称> 格式。

例如,如果您使用 SQL 从 ParcelOwners 表的 Tax_Value 和 Owner_Name 列中获取数据,请使用以下语句:SELECT Main.ParcelOwners.Owner_Name, Main.ParcelOwners.Tax_Value FROM Main.ParcelOwners

通过 SQL 访问移动地理数据库中的数据不需要许可,因为底层软件 SQLite 不需要许可。

相关主题


在本主题中
  1. 优势
  2. 数据集
  3. 数据管理