创建查询图层 (Data Management)

许可等级:BasicStandardAdvanced

摘要

基于输入的 SQL 选择语句,从 DBMS 表创建查询图层

用法

语法

MakeQueryLayer_management (input_database, out_layer_name, query, {oid_fields}, {shape_type}, {srid}, {spatial_reference})
参数说明数据类型
input_database

包含要查询的数据的数据库连接文件。

Workspace
out_layer_name

要创建的要素图层或表视图的输出名称。

String
query

定义要向数据库发出的选择查询的 SQL 语句。

String
oid_fields
[oid_fields,...]
(可选)

SELECT 列表的 SELECT 语句中的一个或多个字段,可用于生成动态的唯一行标识符。

String
shape_type
(可选)

查询图层的形状类型。在输出查询图层中只会使用查询结果集中与指定形状类型匹配的那些记录。工具验证将尝试根据结果集中的第一条记录设置此属性。如果形状类型不是所需的输出形状类型,则执行工具之前可对此进行更改。如果查询结果集未返回几何字段,则忽略此参数。

  • POINT输出查询图层将使用点几何。
  • MULTIPOINT输出查询图层将使用多点几何。
  • POLYGON输出查询图层将使用面几何。
  • POLYLINE输出查询图层将使用折线几何。
String
srid
(可选)

设置返回几何的查询的 SRID(空间参考标识符)值。在输出查询图层中只会使用查询结果集中与指定 SRID 值匹配的那些记录。工具验证将尝试根据结果集中的第一条记录设置此属性。如果 SRID 值不是所需的输出 SRID 值,则执行工具之前可对此进行更改。如果查询结果集未返回几何字段,则忽略此参数。

String
spatial_reference
(可选)

设置输出查询图层将使用的坐标系。工具验证将尝试根据结果集中的第一条记录设置此属性。如果坐标系不是所需的输出坐标系,则执行工具之前可对此进行更改。如果查询结果集未返回几何字段,则忽略此参数。

Spatial Reference

代码实例

MakeQueryLayer 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 MakeQueryLayer 工具。

import arcpy

sr = arcpy.SpatialReference("WGS 1984 UTM Zone 12N")

arcpy.MakeQueryLayer_management("Database Connections/moab.sde",
                                "Slickrock",
                                "select * from moabtrails where name = 'slickrock'",
                                "OBJECTID",
                                "POLYLINE",
                                "32611",
                                sr)
MakeQueryLayer 示例 2(独立脚本)

以下独立脚本演示了如何使用 MakeQueryLayer 工具。

# Name: MakeQueryLayer.py
# Description: Creates an output query layer based on a where clause.
#   This example shows how to create a spatial reference object using the
#   name of a coordinate system. It also demonstrates how to use two fields
#   to generate a dynamic unique row identifier for the query layer.


# Import system modules
import arcpy

# Create the spatial reference for the output layer.
sr = arcpy.SpatialReference("WGS 1984 UTM Zone 12N")

# Run the tool
arcpy.MakeQueryLayer_management("Database Connections/moab.sde",
                                "Single Track",
                                "select * from moabtrails where type = 'single'",
                                "UID;name",
                                "POLYLINE",
                                "32611",
                                sr)

环境

此工具不使用任何地理处理环境

相关主题

许可信息

ArcGIS for Desktop Basic: 是
ArcGIS for Desktop Standard: 是
ArcGIS for Desktop Advanced: 是
5/10/2014