При создании таблицы или добавлении столбца в таблицу базы данных вы указываете определенный тип данных для столбца. Типы данных определяются, исходя из следующего:
- Какие значения можно хранить в столбце
- Какие операции можно применять к данным этого столбца
- Как данные этого столбца хранятся в базе данных
ArcGIS работает с определенными типами данных. При осуществлении доступа к таблице базы данных через Подключения к базам данных, слой запроса или веб-сервис, ArcGIS отфильтровывает любые неподдерживаемые типы данных. ArcGIS не отображает неподдерживаемые типы данных, и вы не сможете редактировать их в ArcGIS. Аналогично, если при помощи ArcGIS копировать и вставлять таблицы, содержащие неподдерживаемые типы данных, из одной базы в другую, ArcGIS вставит только те столбцы, которые используют поддерживаемые типы данных.
В первом столбце в следующей таблице перечислены типы данных ArcGIS. Во втором столбце перечислены типы данных SQL Server, создаваемые ArcGIS. В третьем столбце показано, какие другие типы данных SQL Server (если они имеются) сопоставляются типам данных ArcGIS при просмотре таблицы, созданной вне ArcGIS (не зарегистрированной в базе геоданных). В последнем столбце при необходимости предоставляется дополнительная информация.
Типы данных ArcGIS | Созданные типы данных SQL Server | Другие типы данных SQL Server, которые можно просматривать | Примечания |
---|---|---|---|
BLOB |
varbinary(max) | binary, image, timestamp, varbinary(n) | |
Date |
datetime2(7) | date, datetime2(n), datetime, smalldatetime, time | |
Double |
numeric(p,s) | decimal, float, money, smallmoney | Точность и количество знаков, указанные в ArcGIS, могут повлиять на тип полученных данных, создаваемых в базе данных. Более подробно см. Типы данных полей ArcGIS. |
Float |
numeric(p,s) | real | Точность и количество знаков, указанные в ArcGIS, могут повлиять на тип полученных данных, создаваемых в базе данных. Более подробно см. Типы данных полей ArcGIS. |
Геометрия |
| Укажите, что будет использоваться: GEOMETRY или GEOGRAPHY, – при создании класса пространственных объектов. ArcGIS не поддерживает следующие подтипы геометрии:
Вы не можете создавать в ArcGIS Pro классы объектов, которые используют сжатый двоичный тип хранения геометрии, но вы можете просматривать такие классы в ArcGIS Pro. Сжатые двоичные данные хранятся в базе данных как тип данных INT. | |
Global ID | uniqueidentifier | Поддерживается только базами геоданных. | |
GUID |
uniqueidentifier | ||
Long integer |
int | ||
Raster |
BLOB, int | Растры поддерживаются только базами геоданных. В многопользовательских базах геоданных тип создаваемых данных SQL Server зависит от ключевого слова конфигурации, использующегося при создании набора растровых данных или набора данных мозаики. Если параметр RASTER_STORAGE ключевого слова равен RASTERBLOB, создается столбец BLOB, а если он равен BINARY – создается столбец int. | |
OBJECT ID |
int(4) when created in an enterprise geodatabase integer with identity property when created in a database | В ArcGIS тип ObjectID соответствует столбцу с идентификаторами записей (ID) таблицы (или класса объектов). В таблице может быть только один такой тип. | |
Short integer |
smallint | bit, tinyint | |
Текст |
varchar, nvarchar, varchar(max), nvarchar(max) | char, nchar |
Текстовые типы данных
Если вы создаете поле varchar или varchar(max) в базе данных SQL Server, то оно будет сопоставлено с типом данных ArcGIS TEXT при просмотре в ArcGIS. Если вы создаете текстовое поле в базе данных SQL Server из ArcGIS, используется nvarchar или nvarchar(max).
В случае если параметр конфигурации UNICODE_STRING в многопользовательской базе геоданных равен FALSE, а длина текстового поля – 7999 символов и менее, используется VARCHAR.
Если параметр конфигурации UNICODE_STRING имеет значение FALSE, а длина текстового поля больше или равна 8000 символов, используется VARCHAR(MAX).
Если параметр конфигурации UNICODE_STRING имеет значение TRUE, а длина текстового поля меньше или равна 3 999 знаков, используется NVARCHAR.
Если параметр конфигурации UNICODE_STRING имеет значение TRUE, а длина текстового поля больше или равна 4 000 символов, используется NVARCHAR(MAX).
Геометрические типы данных
Как показано в таблице, ArcGIS Pro создает и может работать с двумя типами данных геометрии в SQL Server: SQL Server Geometry и SQL Server Geography.
SQL Server Geometry
Здесь представлено краткое описание типа Microsoft Geometry. Более подробные сведения о типе Geometry и его использовании можно найти в документации к Microsoft SQL Server.
- Тип Microsoft Geometry поддерживает любую систему координат X/Y.
- Для отображения и пространственных сравнений используются вычисления на плоскости (Евклидовы) и прямолинейная интерполяция между вершинами.
- Соответствует спецификации Open Geospatial Consortium (OGC) Simple Features for SQL версии 1.1.9 и совместимо с ISO-стандартом SQL MM.
SQL Server Geography
Здесь представлено краткое описание типа Microsoft Geography. Более подробные сведения о типе Geography и его использовании можно найти в документации к Microsoft SQL Server.
- Тип Geography поддерживает многие стандартные географические системы координат, например, широта-долгота GPS.
Microsoft требует использования SRID и географических систем координат, заданных в словаре данных SQL Server.
- Для вычислений и пространственных сравнений используются модель эллипсоида (круглая Земля) и интерполяция отрезков линий между вершинами Great Elliptic.
- Тип Geography использует глобальный (на сфере) экстент слоя.
Координаты данных не могут выходить за пределы глобального экстента.
Типы растровых данных
Тип растровых данных, используемый в базах геоданных в SQL Server, - это тип BLOB (rasterblob).