Supported Data Types
The following data types are supported in memory-optimized tables and natively compiled stored procedures:
Numeric Data Types
Data type | For more information |
---|---|
int | int, bigint, smallint, and tinyint (Transact-SQL) |
bigint | int, bigint, smallint, and tinyint (Transact-SQL) |
smallint | int, bigint, smallint, and tinyint (Transact-SQL) |
tinyint | int, bigint, smallint, and tinyint (Transact-SQL) |
decimal | decimal and numeric (Transact-SQL) |
numeric | decimal and numeric (Transact-SQL) |
float | float and real (Transact-SQL) |
real | float and real (Transact-SQL) |
money | money and smallmoney (Transact-SQL) |
smallmoney | money and smallmoney (Transact-SQL) |
String Data Types
Data type | For more information |
---|---|
char(n) | char and varchar (Transact-SQL) |
varchar(n) 1 | char and varchar (Transact-SQL) |
nchar(n) | nchar and nvarchar (Transact-SQL) |
nvarchar(n) 1 | nchar and nvarchar (Transact-SQL) |
sysname | nchar and nvarchar (Transact-SQL) |
1 Limitation is 8060 bytes per row total, counting (n) in variable-length types.
For information about supported collations, see Collations and Code Pages.
Date and Time Data Types
Data type | For more information |
---|---|
date | date (Transact-SQL) |
time | time (Transact-SQL) |
datetime | datetime (Transact-SQL) |
datetime2 | datetime2 (Transact-SQL) |
smalldatetime | smalldatetime (Transact-SQL) |
Binary Data Types
Data type | For more information |
---|---|
bit | bit (Transact-SQL) |
binary(n) | binary and varbinary (Transact-SQL) |
varbinary(n) 1 | binary and varbinary (Transact-SQL) |
1 Limitation is 8060 bytes per row total, counting (n) in variable-length types.
Other data types
Data type | For more information |
---|---|
uniqueidentifier | uniqueidentifier (Transact-SQL) |
Unsupported Data Types
The following data types are not supported:
DATETIMEOFFSET | GEOGRAPHY | GEOMETRY |
HIERARCHYID | Large Objects (LOBs). For example, varchar(max), nvarchar(max), varbinary(max), image, xml, text, and ntext. | ROWVERSION |
sql_variant | CLR functions | User-defined types (UDTs) |
See Also
Transact-SQL Support for In-Memory OLTP
Implementing LOB Columns in a Memory-Optimized Table
Implementing SQL_VARIANT in a Memory-Optimized Table