RecordSet

Краткая информация

Объекты RecordSet являются упрощенным представлением таблицы. Они представляют собой элемент данных, который содержит не только схему, но и данные. Объект RecordSet – это также способ передачи и получения таблиц с сервера.

Обсуждение

  • Если использовать в качестве входных данных для инструмента или функции RecordSet, который изменяет входные данные, например, Вычислить поле или UpdateCursor, изменят исходную таблицу.
  • Загрузка новой таблицы в RecordSet не приведет к перезаписи исходной таблицы. Метод load изменит только ссылку на таблицу, а не исходную таблицу саму по себе.

Синтаксис

 RecordSet ({table_path}, {where_clause})
ПараметрОписаниеТип данных
table_path

The table to load into the RecordSet object.

The input can be a catalog path to a feature class, a URL to a hosted feature layer, a JSON with the syntax {"url":"<url>", "serviceToken":"<serviceToken>"} to load data from external sources that require an access token, or an Esri (featureSet) JSON string.

An Esri JSON is a standard for encoding feature (geometry and attribute) data as a JSON (.json) file. For tables, the JSON does not include geometryType, spatialReference, or geometry keys.

String
where_clause

An SQL expression used to select a subset of records.

For more information on SQL syntax, see SQL reference for query expressions used in ArcGIS.

(Значение по умолчанию — None)

String

Свойства

СвойствоОписаниеТип данных
JSON
(только чтение)

Возвращает представление геометрии Esri JSON в виде строки.

Подсказка:

Возвращаемая строка может быть конвертирована в словарь с помощью функции loads модуля json.

String
GeoJSON
(только чтение)

Возвращает представление геометрии GeoJSON в виде строки.

Подсказка:

Возвращаемая строка может быть конвертирована в словарь с помощью функции loads модуля json.

String

Обзор метода

МетодОписание
load ({table_path}, {where_clause})

Загружает таблицу в объект RecordSet.

save (table_path)

Экспорт в таблицу.

Методы

load ({table_path}, {where_clause})
ПараметрОписаниеТип данных
table_path

The table to load into the RecordSet object.

The input can be a catalog path to a feature class, a URL to a hosted feature layer, a JSON with the syntax {"url":"<url>", "serviceToken":"<serviceToken>"} to load data from external sources that require an access token, or an Esri (featureSet) JSON string.

An Esri JSON is a standard for encoding feature (geometry and attribute) data as a JSON (.json) file. For tables, the JSON does not include geometryType, spatialReference, or geometry keys.

String
where_clause

An SQL expression used to select a subset of records.

For more information on SQL syntax, see SQL reference for query expressions used in ArcGIS.

(Значение по умолчанию — None)

String
save (table_path)
ПараметрОписаниеТип данных
table_path

Создаваемая выходная таблица.

String

Пример кода

RecordSet, пример 1

Импортировать набор инструментов с сервера; получить объект RecordSet из указанного параметра серверного инструмента.

import arcpy

# Add a custom server toolbox
arcpy.ImportToolbox("http://myserver/arcgis/services;Geocode")

# Get recordset from server tool's first parameter to use as schema
in_recordset = arcpy.GetParameterValue("GeocodeAddress", 0)
RecordSet, пример 2

Создать объект RecordSet и загрузить поднабор в размещенную таблицу.

import arcpy

# Set data
in_dataset = "https://maps.my.org/arcgis/rest/services/Tables/MapServer/0"
query = "Country_Code: 'IT'"

# Create RecordSet with query
record_set = arcpy.RecordSet(in_dataset, query)
RecordSet, пример 3

Создаёт объект RecordSet из строки JSON Esri.

import arcpy

# Set data
data_json = '''{
 "objectIdFieldName": "objectid",
 "globalIdFieldName": "globalid",
 "fields": [
  {
   "name": "objectid",
   "alias": "OBJECTID",
   "type": "esriFieldTypeOID"
  },
  {
   "name": "requestid",
   "alias": "Service Request ID",
   "type": "esriFieldTypeString",
   "length": 25
  },
  {
   "name": "requesttype",
   "alias": "Problem",
   "type": "esriFieldTypeString",
   "length": 100
  },
  {
   "name": "comments",
   "alias": "Comments",
   "type": "esriFieldTypeString",
   "length": 255
  }
 ],
 "features": [
  {
   "attributes": {
    "objectid": 246362,
    "requestid": "1",
    "requesttype": "Sidewalk Damage",
    "comments": "Pothole"
   }
  },
  {
   "attributes": {
    "objectid": 246382,
    "requestid": "2",
    "requesttype": "Pothole",
    "comments": "Jhh"
   }
  }
 ]
}'''

# Create FeatureSet from Esri JSON
feature_set = arcpy.RecordSet(data_json)

Связанные разделы