Типы данных Oracle, поддерживаемые в ArcGIS

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

  • Какие значения можно хранить в столбце
  • Какие операции можно применять к данным этого столбца
  • Как данные этого столбца хранятся в базе данных

ArcGIS работает с определенными типами данных. При осуществлении доступа к таблице базы данных через Подключения к базам данных, слой запроса или веб-сервис, ArcGIS отфильтровывает любые неподдерживаемые типы данных. ArcGIS не отображает неподдерживаемые типы данных, и вы не сможете редактировать их в ArcGIS. Аналогично, если при помощи ArcGIS копировать и вставлять таблицы, содержащие неподдерживаемые типы данных, из одной базы в другую, ArcGIS вставит только те столбцы, которые используют поддерживаемые типы данных.

В первом столбце в следующей таблице перечислены типы данных ArcGIS. Во втором столбце перечислены типы данных PostgreSQL, создаваемые ArcGIS. В третьем столбце показано, какие другие типы данных PostgreSQL (если они имеются) сопоставляются типам данных ArcGIS при просмотре таблицы, созданной вне ArcGIS (не зарегистрированной в базе геоданных). В последнем столбце при необходимости предоставляется дополнительная информация.

Тип данных ArcGISСозданные типы данных OracleДругой тип данных Oracle, которые можно просматриватьПримечания

Большое целое

number(p)

number(p)

Значение точности (p) может находиться в диапазоне от 11 до 18.

Если не указать точность при создании большого целочисленного поля в ПО ArcGIS или ArcObjects SDK, будет создано поле Oracle number(38).

Blob

BLOB

Дата

timestamp

Только дата

Не применяется

Не поддерживается

Double

number(38,8)

number(p,s)

Точность (p) и масштаб (s), указанные в ArcGIS, могут повлиять на тип полученных данных. Для получения более подробной информации см. раздел Типы данных полей ArcGIS.

Float

number(38,8)

number(p,s)

Точность (p) и масштаб (s), указанные в ArcGIS, могут повлиять на тип полученных данных. Для получения более подробной информации см. раздел Типы данных полей ArcGIS.

Геометрия

ST_Geometry или SDO_Geometry

Тип создаваемых данных Oracle зависит от указанного при создании класса пространственных объектов хранилища геометрии. Oracle Spatial = SDO_Geometry или spatial type = ST_Geometry.

Чтобы использовать ST_Geometry в базе данных (не в базе геоданных), вам нужно установить эту библиотеку.

Примечание:

В ArcGIS AllSource следующие пространственные типы являются устаревшими:

  • SDEBINARY
  • SDELOB
  • WKB_GEOMETRY

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

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

Global ID

char or nchar (UUID len)

Поддерживается только в базах геоданных.

Поле уникального идентификатора будет создано как nchar, если для параметра UNICODE_STRING ключевого слова конфигурации, с которым была создана таблица, было указано значение TRUE.

GUID

char or nchar (UUID len)

Поле уникального идентификатора будет создано как nchar в базе геоданных, если для параметра UNICODE_STRING ключевого слова конфигурации, с которым была создана таблица, было указано значение TRUE.

Long integer

number(10)

число(p)

Значение точности (p) может находиться в диапазоне от 6 до 10.

При создании с помощью ПО ArcGIS или ArcObjects SDK, если при этом значение точности не задано, в базе данных создается number(38); в ином случае используется заданная точность.

Точность может повлиять на тип полученных данных ArcGIS. Для получения более подробной информации см. раздел Типы данных полей ArcGIS.

Object ID

number(38) при создании в многопользовательской базе геоданных

number(38) с последовательностью при регистрации существующей таблицы базы данных базой геоданных.

number(38) всегда создается в качестве идентификатора при использовании ArcGIS для создания класса пространственных объектов или таблицы в базе данных Oracle либо при работе с инструментом геообработки Добавить прирастающее поле ID для добавления поля ID field к таблице базы данных Oracle.

Тип данных ArcGIS ObjectID соответствует столбцу с идентификаторами записей (ID) таблицы (или класса объектов). В таблице может быть только один.

Растр

BLOB or number(38)

Тип растровых данных ArcGIS поддерживается только в базах геоданных.

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

Short integer

number(5)

number(p)

Значение точности (p) может находиться в диапазоне от 1 до 5. Но в столбцах short integer могут храниться только значения в диапазоне от -32 768 до 32 767. Даже если точность числа равна 5, вы не можете хранить в столбце short integer значение, большее 32 767 или меньшее -32 768.

При создании с помощью ПО ArcGIS или ArcObjects SDK, если при этом значение точности не задано, в базе данных создается number(5); в ином случае используется заданная точность.

Точность может повлиять на тип полученных данных ArcGIS. Для получения более подробной информации см. раздел Типы данных полей ArcGIS.

Текст

varchar2, CLOB, nvarchar2 или NCLOB

Только время

Не применяется

Не поддерживается

Сдвиг метки времени

метка времени со сдвигом часового пояса

Типы данных Oracle, которые поддерживаются ArcGIS

Текстовые типы данных

Если вы собираетесь включить текстовое поле в таблицу, создаваемую с помощью ArcGIS, используется тип данных varchar2, если в базе данных не выбрана кодировка Unicode. Если установлен размер текстового поля, больший 4000, а для базы данных не выбрана кодировка Unicode, тип данных Oracle будет CLOB.

Если для вашей базы данных выбрана кодировка Unicode, будет создано текстовое поле nvarchar2. (Это настройка по умолчанию для баз геоданных в Oracle). Если установлен размер текстового поля, больший 2000, а для базы данных выбрана кодировка Unicode, тип данных Oracle будет NCLOB.

Геометрические типы данных

ArcGIS создает и использует в Oracle два типа геометрических данных: Esri ST_Geometry и Oracle SDO_Geometry.

ST_Geometry

Тип данных ST_Geometry использует спецификацию пользовательских типов данных SQL 3 (UDT), что позволяет создавать столбцы, в которых могут храниться пространственные данные, например, улицы, земельные участки, достопримечательности. В соответствии со стандартами International Organization for Standards (ISO) и Open Geospatial Consortium (OGC) он обеспечивает поддержку SQL-доступа к базам геоданных и базам данных. Данный вид хранения расширяет возможности базы данных, обеспечивая хранение для объектов (точек, линий и полигонов), которые представляют графические объекты. Оно было разработано для эффективного использования ресурсов баз данных, для совместимости с объектами баз данных, такими, как реплики и разделы, и для предоставления быстрого доступа к пространственным данным.

Дополнительные сведения см. в разделе ST_Geometry в Oracle.

SDO_Geometry

SDO_Geometry реализован с помощью системы расширяемых типов реляционных объектов Oracle. Тип SDO_Geometry предлагается компанией Oracle с двумя основными опциями:

  • Oracle Spatial – это дополнительный компонент Oracle Database Enterprise Edition. Кроме предоставления типа SDO_Geometry, Oracle Spatial предоставляет ряд дополнительных геопространственных возможностей.
  • Oracle Locator поддерживает поднабор возможностей Oracle Spatial. Он включается как стандартный компонент Oracle Database в версиях Standard и Enterprise. Помимо прочих возможностей, в нем содержится тип геометрии Oracle Spatial (который называется SDO_Geometry) и интерфейс SQL API, предназначенный для этого содержимого.

ArcGIS поддерживает SDO_Geometry в качестве дополнительного метода хранения пространственных данных. В частности геометрия Oracle Spatial или Locator может использоваться для хранения и управления объектами и содержанием растровых наборов данных в многопользовательских базах геоданных или базах данных Oracle.

Для получения сведений о SDO_Geometry, обратитесь к документации Oracle.

Типы растровых данных

Используйте ключевое слово конфигурации, содержащее параметр RASTER_STORAGE со значением RASTERBLOB, при создании наборов растровых данных и наборов данных мозаики в базах геоданных в Oracle.

Прежние версии:

Хотя вы можете использовать ключевое слово конфигурации, содержащее параметр RASTER_STORAGE со значением BLOB, это менее эффективно и поддерживается в основном на устаревших системах.