sys.table_types (Transact-SQL)
Collapse the table of content
Expand the table of content

sys.table_types (Transact-SQL)


Applies To: SQL Server 2014, SQL Server 2016 Preview

Displays properties of user-defined table types in SQL Server. A table type is a type from which table variables or table-valued parameters could be declared. Each table type has a type_table_object_id that is a foreign key into the sys.objects catalog view. You can use this ID column to query various catalog views, in a way that is similar to an object_id column of a regular table, to discover the structure of the table type such as its columns and constraints.

Applies to: SQL Server (SQL Server 2008 through current version), Azure SQL Database.

Column name

Data type


<inherited columns>


For a list of columns that this view inherits, see sys.types (Transact-SQL).



Object identification number. This number is unique within a database.



The following are the possible values:

0 = is not memory optimized

1 = is memory optimized

A value of 0 is the default value.

Table types are always created with DURABILITY = SCHEMA_ONLY. Only the schema is persisted on disk.

Applies to: SQL Server 2014 through SQL Server 2016.

The visibility of the metadata in catalog views is limited to securables that a user either owns or on which the user has been granted some permission. For more information, see Metadata Visibility Configuration.

Community Additions

© 2016 Microsoft