Database data types supported in ArcGIS

When you create a table or add a column to a table in a database, you define a specific data type for the column. Data types determine the following:

  • What values you can store in the column
  • What operations you can use on the data in that column
  • How the data in that column is stored in the database

ArcGIS works with specific data types. When you access a database table through a Database Connection, query layer, or web service, ArcGIS filters out any unsupported data types. ArcGIS does not display unsupported data types, and you cannot edit unsupported data types through ArcGIS. Similarly, when you use ArcGIS to copy and paste tables containing unsupported data types from one database to another, ArcGIS only pastes columns that use a supported data type.

The first column in the following tables lists the ArcGIS data types. The second column lists the database data type that ArcGIS creates, when applicable. The third column shows what other database data types, if any, map to the ArcGIS data type when you use an ArcGIS client to view a table that you created outside ArcGIS. The last column provides additional information when needed.

Dameng

ArcGIS data types Dameng data types createdOther Dameng data types that can be viewedNotes

Big integer

bigint

Blob

BLOB

Date

datetime6

Date only

date

Double

dec(p,s)

By default, p (precision) = 38 and s (scale) = 8.

Float

dec(p,s)

By default, p (precision) = 38 and s (scale) = 8.

Geometry

st_geometry

GUID

char(38)

Long integer

integer

Object ID

integer

Short integer

smallint

Text

varchar

The default value for text field length is 50.

Time only

time

Timestamp offset

timestamp with time zone offset

Dameng data types supported in ArcGIS

IBM Db2

ArcGIS data typeDb2 data type createdOther Db2 data types that can be viewedNotes

Big integer

bigint

Blob

BLOB

Date

timestamp

Date only

date

Double

decimal(p,s)

The precision and scale specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Float

decimal(p,s)

The precision and scale specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Geometry

ST_Geometry

Global ID

char(38)

Global IDs supported in geodatabases only.

GUID

char(UUID len)

Long integer

integer

Object ID

integer (32-bit object ID), big int (64-bit object ID)

The ArcGIS Object ID data type is the registered row ID column for the table (or feature class). Only one may exist per table.

The field includes the identity property when created in a database.

Raster

BLOB

The ArcGIS raster data type is supported in geodatabases only.

Short integer

smallint

Text

varchar

char

Time only

time

Timestamp offset

Not applicable

Not supported

Db2 data types supported in ArcGIS

Microsoft SQL Server

ArcGIS data typeSQL Server data types createdOther SQL Server data types that can be viewedNotes

Big integer

bigint

Blob

varbinary(max)

binary, image, timestamp, varbinary(n)

Date

datetime2(7)

datetime2(n), datetime, smalldatetime

Date only

date

Double

numeric(p,s)

decimal, float, money, smallmoney

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Float

numeric(p,s)

real

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Geometry

  • geometry
  • geography

Specify whether to use the geometry or geography spatial data type when a feature class is created.

ArcGIS does not support the following Geometry subtypes:

  • CircularString
  • CompoundCurve
  • CurvePolygon
  • GeometryCollection

Note:

The following geometry storage types have been deprecated in ArcGIS Pro:

  • SDEBINARY
  • WKB_GEOMETRY

You cannot create feature classes that use these storage types. Currently, you can view feature classes that use these geometry storage types, but this functionality will be removed in a future release. Use the Migrate Storage geoprocessing tool to migrate feature classes to supported data types to ensure you can continue to access the data.

If compressed binary data is present, it is stored as an INT data type in the database.

Global ID

uniqueidentifier

Supported in geodatabases only.

GUID

uniqueidentifier

Long integer

int

Raster

int

The ArcGIS raster data type is supported in geodatabases only.

In enterprise geodatabases in SQL Server, an integer field is created in the base table and BLOB fields in associated raster tables store the imagery data.

OBJECT ID

int(4) when created in an enterprise geodatabase

integer with identity property when created in a database

The ArcGIS Object ID data type is the registered row ID column for the table (or feature class.) Only one may exist per table.

Short integer

smallint

bit, tinyint

Text

varchar, nvarchar, varchar(max), nvarchar(max)

char, nchar

Time only

time

Timestamp offset

timestamp with time zone offset

SQL Server data types supported in ArcGIS

Oracle

ArcGIS data typeOracle data types createdOther Oracle data type that can be viewedNotes

Big integer

number(p)

number(p)

The precision (p) value can be in the range of 11 to 18.

If you do not specify a precision when you create a big integer field in ArcGIS software or ArcObjects SDK, an Oracle number(38) field is created.

Blob

BLOB

Date

timestamp

Date only

Not applicable

Not supported

Double

number(38,8)

number(p,s)

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type. See ArcGIS field data types for more information.

Float

number(38,8)

number(p,s)

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type. See ArcGIS field data types for more information.

Geometry

ST_Geometry or SDO_Geometry

The Oracle data type that gets created depends on the geometry storage specified when the feature class is created. Oracle Spatial = SDO_Geometry or spatial type = ST_Geometry.

To use ST_Geometry in a database (not geodatabase), you must install it.

Note:

The following geometry storage types have been deprecated in ArcGIS Pro:

  • SDEBINARY
  • SDELOB
  • WKB_GEOMETRY

If present in the geodatabase, these appear as number data types in the database.

You cannot create feature classes that use these storage types. Currently, you can view feature classes that use these geometry storage types, but this functionality will be removed in a future release. Use the Migrate Storage geoprocessing tool to migrate feature classes to supported data types to ensure you can continue to access the data.

Global ID

char or nchar (UUID len)

Supported in geodatabases only.

The unique identifier field will be created as nchar if the configuration keyword with which you specified the table's creation had the parameter UNICODE_STRING set to TRUE.

GUID

char or nchar (UUID len)

The unique identifier field will be created as nchar in a geodatabase if the configuration keyword with which you specified the table's creation had the parameter UNICODE_STRING set to TRUE.

Long integer

number(10)

number(p)

The precision (p) value can be in the range of 6 to 10.

If created with ArcGIS software or ArcObjects SDK and precision is not set, a number(38) is created in the database; otherwise, the precision specified is used.

The precision can affect the resultant ArcGIS data type. See ArcGIS field data types for more information.

Object ID

number(38) when created in an enterprise geodatabase

number(38) with sequence when you register an existing database table with the geodatabase.

number(38) generated always as identity when you use ArcGIS to create a feature class or table in an Oracle database or use the Add Incrementing ID Field geoprocessing tool to add an ID field to a table in an Oracle database.

The ArcGIS Object ID data type is the registered row ID column for the table (or feature class). Only one can exist per table.

Raster

BLOB or number(38)

The ArcGIS raster data type is supported in geodatabases only.

The data type used for the raster field depends on the configuration keyword you specify when you create a mosaic dataset or raster dataset.

Short integer

number(5)

number(p)

The precision (p) value can be in the range of 1 to 5. However, short integer columns can only store values that fall in the range of -32,768 to 32,767. Even if the precision on the number is 5, you cannot store a number greater than 32,767 or less than -32,768 in a short integer column.

If created with ArcGIS software or ArcObjects SDK and precision is not set, a number(5) is created in the database; otherwise, the precision specified is used.

The precision can affect the resultant ArcGIS data type. See ArcGIS field data types for more information.

Text

varchar2, CLOB, nvarchar2, or NCLOB

Time only

Not applicable

Not supported

Timestamp offset

timestamp with time zone offset

Oracle data types supported in ArcGIS

PostgreSQL

ArcGIS data typePostgreSQL data types createdOther PostgreSQL data types that can be viewedNotes

Big integer

bigint

Blob

bytea

Date

timestamp without time zone

timestamp with time zone

Date only

date

Double

numeric(p,s)

double precision

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Float

numeric(p,s)

decimal, double precision, numeric, real

The precision (p) and scale (s) specified in ArcGIS can affect the resultant data type created in the database. See ArcGIS field data types for more information.

Geometry

ST_Geometry, Geometry (PostGIS), Geography (PostGIS)

In a geodatabase, the GEOMETRY_STORAGE setting of the configuration keyword used when creating the feature class determines which data type is created in the database.

To use ST_Geometry in a database (not a geodatabase), you must install it. See Add the ST_Geometry type to a PostgreSQL database for information.

To use the PostGIS geometry or geography type, you must install PostGIS in your PostgreSQL database cluster, and the database itself must be enabled to use PostGIS. See your PostgreSQL documentation for more information.

Global ID

varchar(38)

Global IDs are supported in geodatabases only.

GUID

varchar(38)

UUID

Long integer

integer

serial

Object ID

integer (32-bit) or bigint (64-bit) in a geodatabase

Serial in a database

The ArcGIS Object ID data type is the registered row ID column for the table (or feature class). Only one can exist per table.

Raster

bytea

The ArcGIS raster data type is supported in geodatabases only.

Short integer

smallint

Text

character varying

character, text

If you create a text field using an SQL client or a third-party application and do not define a length (in other words, the length is 0), ArcGIS reads this field as a CLOB.

Time only

time

time without time zone, time with time zone

Timestamp offset

Not applicable

Not supported

PostgreSQL data types supported in ArcGIS

SAP HANA

ArcGIS data typeSAP HANA data type createdOther SAP HANA data types that can be viewedNotes

Big integer

bigint

Blob

BLOB

Date

timestamp

date, seconddate, time

Date only

date

Double

decimal(38,8)

decimal(p,s), number(p,s), numeric(p,s), bigint

p > 0

The precision (p) and scale (s) specified in ArcGIS affects the resultant data type created in the database.

Float

decimal(38,8)

decimal(p,s)

p <= 9 and s > 0

The precision (p) and scale (s) specified in ArcGIS affects the resultant data type created in the database.

Geometry

ST_Geometry

Global ID

character(38)

Supported in geodatabases only.

GUID

character(38)

Latin character set

Long integer

integer

decimal(p,0)

p <= 9

Object ID

bigint

Only 32-bit numbers are stored at this time.

Raster

Not applicable

The ArcGIS raster data type is supported in geodatabases only.

Rasters created in geodatabases in SAP HANA use an Esri proprietary data type.

Short integer

smallint

tinyint

Text

varchar(50)

alphanum(n), nvarchar(n), CLOB, NCLOB

Time only

time

Timestamp offset

Not applicable

Not supported.

SAP HANA data types supported in ArcGIS

SQLite

SQLite databases (including Open Geospatial Consortium (OGC) GeoPackage files) do not implement data types in the same way that most other database management systems do. SQLite has a few storage classes in which you can store data types. SQLite allows you to name data types, as in the case of the realdate, realdateonly, geometryblob, and uuidtext types that get created in SQLite when you create a date, dateonly, geometry, or guid field in ArcGIS. It also searches the literal text of the data type for clues as to what data type the column stores. For example, it looks for int and interprets that as an integer field. Therefore, if you specify a data type of point, SQLite sees it is an integer field because point contains the string int.

ArcGIS assumes that the data type specified for the field in the table definition is the data type to be applied to all values in the field. If the data type cannot be recognized by ArcGIS, you will not be able to access the table from ArcGIS.

ArcGIS data typesSQLite data types createdOther SQLite data types that can be viewedNotes

Big integer

int64

An integer is created in OGC GeoPackage.

Not supported in SQLite databases if SpatiaLite is installed.

Blob

blob(n)

Date

realdate

Date only

realdateonly

A date is created in OGC GeoPackage.

Not supported in SQLite databases if SpatiaLite is installed.

Double

float64

numeric, double, float, boolean, real

integer, int, int64, int32 (in databases that do not have SpatiaLite installed)

Float

float64

Geometry

geometryblob

Global ID

uuidtext

Supported in mobile geodatabases only.

GUID

uuidtext in SQLite databases, text in GeoPackage files

Long Integer

int32(n)

integer, int, int32 (in databases with SpatiaLite)

integer primary key

n >= -2147483648 and n <= 2147483648

Object ID

int32

Short Integer

int16(n)

n >= -32768 and n<= 32768

Text

text(n)

char, varchar, blob

Time only

texttimeonly

Not supported in GeoPackage files and not supported in SQLite databases if SpatiaLite is installed.

Timestamp offset

texttimestamptz collate tsorder

Not supported in GeoPackage files and not supported in SQLite databases if SpatiaLite is installed.

SQLite data types supported in ArcGIS

Teradata Data Warehouse Appliance

ArcGIS data typesTeradata data types createdOther Teradata data types that can be viewedNotes

Big integer

bigint

Blob

BLOB

The BLOB size is the Teradata default size.

Date

timestamp

Date only

date

Double

decimal(38,8)

decimal(n,m), number(n,m), numeric(n,m)

m > 0

The precision and scale specified in ArcGIS can affect the resultant data type created in the database.

Float

decimal(38,8)

decimal(n,m), number(n,m), numeric(n,m)

m > 0

The precision and scale specified in ArcGIS can affect the resultant data type created in the database.

Geometry

CLOB (ST_Geometry)

This field must be named shape for ArcGIS to recognize it as a spatial column.

GUID

character(38) character set latin

Long integer

integer

decimal(p,s), number(p,s), numeric(p,s)

precision (p) = 5, 6, 7, 8, or 9

scale (s) = 0

Object ID

integer

Short integer

smallint

decimal(p,s), number(p,s), numeric(p,s)

precision (p) <= 4

scale (s) = 0

Text

varchar(50) character set unicode

varchar(n) character set unicode, varchar(n) character set latin, char(n) character set unicode, char(n) character set latin, JSON

Time only

time

Timestamp offset

timestamp with time zone offset

Teradata data types supported in ArcGIS