创建查询图层
在 ArcMap 中使用查询 对话框来创建查询图层。必须首先创建与数据库的连接,之后才能创建查询图层。
建立了与数据库的连接后,将使用在该数据库中找到的表和视图的列表填充该对话框的左侧窗口。选择其中一个表后,该表的各个列将显示在右侧窗口中。
注:
数据库中的每一列都具有特定的数据类型。ArcGIS 可以处理最常用的数据库类型。但不支持某些不常用的数据库类型。如果属性列的类型为“未知”,这表明 ArcGIS 不支持该数据类型。指定某个查询时,必须排除数据类型为“未知”的所有列,或者将这些列的数据类型更改为 ArcGIS 支持的数据类型。
要了解有关 ArcGIS 支持的数据类型的详细信息,请参阅以下帮助主题:
ArcGIS、ArcSDE 和 Informix 数据类型比较
步骤:
- 在名称文本框中为要创建的查询图层指定一个名称。此名称将显示在 ArcMap 内容列表中。
- 在查询文本框中输入一个 SQL 查询。
-
查询创建完成后,必须对其进行验证。单击验证可确保查询语法正确并且返回的数据能够为 ArcGIS 所用。验证过程将在数据库中执行查询,并验证查询的结果集是否符合 ArcGIS 所实施的数据建模标准。只有当查询图层有效时,才会将其添加到 ArcMap。
验证规则如下:
- 结果集最多只能包含一个空间字段。
- 结果集最多只能包含一个空间参考。
- 结果集必须只有一种实体类型。
- 结果集不得包含任何 ArcGIS 不支持的字段类型。
如果由于任何原因而导致验证失败,系统将返回一条错误消息以便您修改查询。
如果所使用的空间数据库中的数据执行的标准与 ArcGIS 不同,则验证尤为重要。
提示:验证过程中,ArcGIS 将为查询图层设定实体、空间参考以及唯一标识符属性。这些值取决于查询返回的第一行。如果需要更改这些设置,可以通过高级选项 对话框进行。选中显示高级属性复选框可在新建查询图层对话框中显示高级选项页面。有关高级选项页面的详细信息,请参阅以下主题:选择唯一标识符字段和定义查询图层的空间参考。
- 如果成功执行了查询验证,则可单击完成将该结果集以查询图层的形式添加到 ArcMap 中。
构建查询时,通过双击表或者将该表从列表 窗口拖放到查询文本框中,可将整个表添加到查询文本框中。同样,通过双击表中的特定列或者将这些列从列 窗口拖放到查询文本框中,也可将这些列添加到查询中。也可以输入特定查询,或者从外部应用程序剪切查询并将其粘贴到查询文本框中。
构建查询图层时,应使用特定于数据库的 SQL 语法。以下是常见的示例:SELECT * FROM Test.dbo.US_States。这将生成一个包含 US_States 表中所有行的查询图层。在 ArcMap 中,这将显示美国的所有州。有关构建 SQL 查询的详细信息,请参阅关于构建 SQL 表达式。7/10/2012