Добавить поле (Управление данными)

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

Добавляет новое поле в автономную таблицу или таблицу класса пространственных объектов или векторного слоя, а также в растры с таблицами атрибутов.

Использование

    Внимание:

    Этот инструмент изменяет входные значения. Более подробно о стратегиях предотвращения нежелательных изменений данных см. в разделе Инструменты, которые изменяют или обновляют входные данные.

  • Для шейп-файлов и таблиц dBase, если тип поля определяет символ, для каждой записи водятся пробелы. Если тип поля определяет числовой элемент, для каждой записи вводится 0.

  • Длина поля применима только к полям текстового типа. Если длина поля не указана, будет использоваться длина 255.

  • Для баз геоданных, если тип поля определяет буква или число, в каждую запись вводится <null>, если параметр Поле поддерживает пустые значения включен.

  • Не поддерживающее значения null поле нельзя добавить в не пустой класс объектов и таблицу базы геоданных.

  • Шейп-файл не поддерживает псевдонимы для полей, так что вы не можете добавить псевдонимы поля в шейп-файл.

  • Вы можете использовать существующий домен из класса пространственных объектов в базе геоданных в качестве значения параметра Домен поля. Необходимо ввести имя существующего домена. Введение некорректных имен и значений доменов не приведет к тому, что инструмент не будет выполняться, но такие имена и значения будут проигнорированы, и для поля домен задан не будет.

  • Разрядность и количество десятичных знаков поля представляют максимальный размер и точность данных, которые могут храниться в поле. Разрядность представляет количество цифр, которые могут храниться в поле, а количество десятичных знаков представляет количество знаков после запятой для полей с плавающей точкой и двойной точности. Например, если значение поля равняется 54,234, то количество десятичных знаков = 3, а разрядность = 5.

    Примечание:

    Разрядность и количество десятичных знаков не поддерживаются в классах объектов или таблицах файловой базы геоданных. Если вы вводите значение разрядности или количества десятичных знаков, оно игнорируется.

    Для других типов баз данных, используйте следующие рекомендации для выбора корректного типа поля для заданной разрядности и точности:

    • Если вы создаете поля с плавающей точкой или двойной точности и задаете разрядность и количество десятичных знаков, то если разрядность больше 6, используйте значение двойной точности; в противном случае, используйте значение с плавающей точкой.
    • Для поля с числом десятичных знаков 0, используйте тип поля long или short integer. Если создается поле long integer, укажите разрядность 10 или менее, иначе будет создано поле типа double.

    Более подробно о типах числовых полей

  • Обязательные поля постоянны, их невозможно удалить. Чтобы иметь возможность удалять их в дальнейшем, сделайте поле не обязательным (по умолчанию).

  • Поле растрового типа позволяет иметь растровое изображение в качестве атрибута. Оно хранится внутри базы геоданных или рядом с ней. Это полезно, когда изображение является лучшим способом описания объекта. Точность, разрядность и длина не могут быть заданы для полей типа растр.

Параметры

ПодписьОписаниеТип данных
Входная таблица

Входная таблица, куда будет добавлено указанное поле. Поле будет добавлено к существующей входной таблице и не создаст новой выходной таблицы.

Поля могут быть добавлены в классы пространственных объектов в базах геоданных, шейп-файлы, покрытия, автономные таблицы, каталоги растров, растры с таблицами атрибутов и в слои.

Mosaic Layer; Raster Layer; Table View
Имя поля

Имя поля, добавляемого к входной таблице.

String
Тип поля

Задает тип для нового поля.

  • Short (16-разрядное целочисленное)Тип поля будет установлен на short. Поля типа Короткое целое поддерживают целые числа в диапазоне от -32768 до 32767.
  • Long (32-разрядное целочисленное)Тип поля будет установлен на long. Поля типа Длинное целое поддерживают целые числа в диапазоне от -2147483648 до 2147483647.
  • Big integer (64-разрядное целое число)Типом поля будет большое целочисленное. Поля типа big integer поддерживают целые числа в диапазоне -(253). и 253.
  • Float (32-разрядное с плавающей точкой)Тип поля будет установлен на float. Поля с плавающей точкой поддерживают дробные числа в диапазоне от -3.4E38 до 1.2E38.
  • Double (64-разрядное с плавающей точкой)Тип поля будет установлен на double. Поля двойной точности поддерживают дробные числа в диапазоне от -2.2E308 до 1.8E308.
  • TextТип поля будет установлен на text. Текстовые поля поддерживают строки символов.
  • DateТип поля будет установлен на date. Поля типа Date поддерживают значения даты и времени.
  • Дата (высокой точности)Тип поля будет дата с высокой точностью. Поля даты с высокой точностью поддерживают дату и время с точностью до миллисекунды.
  • Только датаТипом поля будет только поле даты. Поля только для даты поддерживают значения даты без значений времени.
  • Только времяТипом поля будет только поле времени. Поля только для времени поддерживают значения времени без значения даты.
  • Сдвиг метки времениТипом поля будет поле сдвига метки времени. Поля сдвига метки времени поддерживают дату, время и сдвиг от значения UTC.
  • BLOB (Большой двоичный объект)Тип поля будет BLOB. Большой двоичный объект (BLOB) поддерживает данные, хранимые в виде длинной последовательности двоичных чисел. Необходимо использовать пользовательский загрузчик или вьюер, или приложение сторонних производителей для загрузки элементов в поле типа BLOB или просмотра его содержимого.
  • GUID (глобальный уникальный идентификатор)Типом поля будет GUID. Поле типа GUID содержат строки в стиле реестра, состоящие из 36 символов, заключенных в фигурные скобки.
  • RasterТипом поля будет Растр. Поле типа Raster может хранить растровые данные в базе геоданных или вне ее. Можно хранить все поддерживаемые в ArcGIS форматы наборов растровых данных, но рекомендуется для этого поля использовать только маленькие изображения.
String
Разрядность поля
(Дополнительный)

Число цифр, хранящихся в поле. Учитываются все цифры, независимо от их расположения относительно разделяющей запятой.

Этот параметр применим только к числовым типам полей.

Если входная таблица находится в файловой базе геоданных, значение разрядности поля будет игнорироваться.

Long
Точность поля
(Дополнительный)

Количество знаков после запятой, хранящихся в поле.

Этот параметр применим только к полям с плавающей точкой или double.

Если входная таблица находится в файловой базе геоданных, значение точности поля будет игнорироваться.

Long
Длина поля
(Дополнительный)

Длина поля Устанавливает максимально возможное количество знаков для каждой записи в поле. Если длина поля не указана, будет использоваться длина 255.

Этот параметр доступен только для текстовых полей.

Long
Псевдоним поля
(Дополнительный)

Альтернативное имя для поля. Это имя используется для описания непонятных имен полей. Данный параметр применяется только к базам геоданных.

String
Поле поддерживает нулевые значения
(Дополнительный)

Определяет, может ли поле содержать пустые значения. Пустые (NULL) значения отличаются от 0 или пустых полей и поддерживаются только для полей в базе геоданных.

  • Отмечено - поле может содержать значения null. Это значение по умолчанию
  • Не отмечено – значения null для поля недопустимы.
Boolean
Обязательное поле
(Дополнительный)

Определяет, будет ли создаваемое поле обязательным для таблицы или нет. Обязательные поля поддерживаются только базами геоданных.

  • Отмечено – поле является обязательным. Обязательные поля постоянны, их невозможно удалить.
  • Не отмечено – это поле не является обязательным. Это значение по умолчанию
Boolean
Домен поля
(Дополнительный)

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

String

Производные выходные данные

ПодписьОписаниеТип данных
Обновленная входная таблица

Обновленная входная таблица.

Table

arcpy.management.AddField(in_table, field_name, field_type, {field_precision}, {field_scale}, {field_length}, {field_alias}, {field_is_nullable}, {field_is_required}, {field_domain})
ИмяОписаниеТип данных
in_table

Входная таблица, куда будет добавлено указанное поле. Поле будет добавлено к существующей входной таблице и не создаст новой выходной таблицы.

Поля могут быть добавлены в классы пространственных объектов в базах геоданных, шейп-файлы, покрытия, автономные таблицы, каталоги растров, растры с таблицами атрибутов и в слои.

Mosaic Layer; Raster Layer; Table View
field_name

Имя поля, добавляемого к входной таблице.

String
field_type

Задает тип для нового поля.

  • SHORTТип поля будет установлен на short. Поля типа Короткое целое поддерживают целые числа в диапазоне от -32768 до 32767.
  • LONGТип поля будет установлен на long. Поля типа Длинное целое поддерживают целые числа в диапазоне от -2147483648 до 2147483647.
  • BIGINTEGERТипом поля будет большое целочисленное. Поля типа big integer поддерживают целые числа в диапазоне -(253). и 253.
  • FLOATТип поля будет установлен на float. Поля с плавающей точкой поддерживают дробные числа в диапазоне от -3.4E38 до 1.2E38.
  • DOUBLEТип поля будет установлен на double. Поля двойной точности поддерживают дробные числа в диапазоне от -2.2E308 до 1.8E308.
  • TEXTТип поля будет установлен на text. Текстовые поля поддерживают строки символов.
  • DATEТип поля будет установлен на date. Поля типа Date поддерживают значения даты и времени.
  • DATEHIGHPRECISIONТип поля будет дата с высокой точностью. Поля даты с высокой точностью поддерживают дату и время с точностью до миллисекунды.
  • DATEONLYТипом поля будет только поле даты. Поля только для даты поддерживают значения даты без значений времени.
  • TIMEONLYТипом поля будет только поле времени. Поля только для времени поддерживают значения времени без значения даты.
  • TIMESTAMPOFFSETТипом поля будет поле сдвига метки времени. Поля сдвига метки времени поддерживают дату, время и сдвиг от значения UTC.
  • BLOBТип поля будет BLOB. Большой двоичный объект (BLOB) поддерживает данные, хранимые в виде длинной последовательности двоичных чисел. Необходимо использовать пользовательский загрузчик или вьюер, или приложение сторонних производителей для загрузки элементов в поле типа BLOB или просмотра его содержимого.
  • GUIDТипом поля будет GUID. Поле типа GUID содержат строки в стиле реестра, состоящие из 36 символов, заключенных в фигурные скобки.
  • RASTERТипом поля будет Растр. Поле типа Raster может хранить растровые данные в базе геоданных или вне ее. Можно хранить все поддерживаемые в ArcGIS форматы наборов растровых данных, но рекомендуется для этого поля использовать только маленькие изображения.

Хотя значения свойства type объекта Field в точности не соответствуют ключевым словам, используемым в параметре field_type инструмента Добавить поле, все значения type объекта Field могут использоваться как входные для этого параметра. Разные типы полей сопоставляются следующим образом: Integer с LONG, String с TEXT и SmallInteger с SHORT.

String
field_precision
(Дополнительный)

Число цифр, хранящихся в поле. Учитываются все цифры, независимо от их расположения относительно разделяющей запятой.

Этот параметр применим только к числовым типам полей.

Если входная таблица находится в файловой базе геоданных, значение разрядности поля будет игнорироваться.

Long
field_scale
(Дополнительный)

Количество знаков после запятой, хранящихся в поле.

Этот параметр применим только к полям с плавающей точкой или double.

Если входная таблица находится в файловой базе геоданных, значение точности поля будет игнорироваться.

Long
field_length
(Дополнительный)

Длина поля Устанавливает максимально возможное количество знаков для каждой записи в поле. Если длина поля не указана, будет использоваться длина 255.

Этот параметр доступен только для текстовых полей.

Long
field_alias
(Дополнительный)

Альтернативное имя для поля. Это имя используется для описания непонятных имен полей. Данный параметр применяется только к базам геоданных.

String
field_is_nullable
(Дополнительный)

Определяет, может ли поле содержать пустые значения. Пустые (NULL) значения отличаются от 0 или пустых полей и поддерживаются только для полей в базе геоданных.

  • NULLABLEПоле может содержать значения null. Это значение по умолчанию
  • NON_NULLABLEПоле не может содержать значения null.
Boolean
field_is_required
(Дополнительный)

Определяет, будет ли создаваемое поле обязательным для таблицы или нет. Обязательные поля поддерживаются только базами геоданных.

  • NON_REQUIREDПоле не является обязательным. Это значение по умолчанию
  • REQUIREDПоле является обязательным. Обязательные поля постоянны, их невозможно удалить.
Boolean
field_domain
(Дополнительный)

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

String

Производные выходные данные

ИмяОписаниеТип данных
out_table

Обновленная входная таблица.

Table

Пример кода

AddField, пример 1 (окно Python)

Пример скрипта окна Python для использования функции AddField в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data/airport.gdb"
arcpy.management.AddField("schools", "ref_ID", "LONG", 9, "", "", "refcode", 
                          "NULLABLE", "REQUIRED")
AddField, пример 2 (автономный скрипт)

В следующем автономном скрипте показано использование функции AddField.

# Name: AddField_Example2.py
# Description: Add a pair of new fields to a table
 
# Import system modules
import arcpy
 
# Set environment settings
arcpy.env.workspace = "C:/data/airport.gdb"
 
# Set local variables
inFeatures = "schools"
fieldName1 = "ref_ID"
fieldPrecision = 9
fieldAlias = "refcode"
fieldName2 = "status"
fieldLength = 10

# Run AddField twice for two new fields
arcpy.management.AddField(inFeatures, fieldName1, "LONG", fieldPrecision,
                          field_alias=fieldAlias, field_is_nullable="NULLABLE")

arcpy.management.AddField(inFeatures, fieldName2, "TEXT", 
                          field_length=fieldLength)

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