sys.systypes (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric
Returns one row for each system-supplied and each user-defined data type defined in the database.
Important
This SQL Server 2000 system table is included as a view for backward compatibility. We recommend that you use the current SQL Server system views instead. To find the equivalent system view or views, see Mapping System Tables to System Views (Transact-SQL). This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.
Column name | Data type | Description |
---|---|---|
name | sysname | Data type name. |
xtype | tinyint | Physical storage type. |
status | tinyint | Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. |
xusertype | smallint | Extended user type. Overflows or returns NULL if the number of data types exceeds 32,767. |
length | smallint | Physical length of the data type. |
xprec | tinyint | Internal precision, as used by the server. Not to be used in queries. |
xscale | tinyint | Internal scale, as used by the server. Not to be used in queries. |
tdefault | int | ID of the stored procedure that contains integrity checks for this data type. |
domain | int | ID of the stored procedure that contains integrity checks for this data type. |
uid | smallint | Schema ID of the owner of the type. For databases upgraded from an earlier version of SQL Server, the schema ID is equal to the user ID of the owner. ** Important ** If you use any of the following SQL Server DDL statements, you must use the sys.types catalog view instead of sys.systypes. ALTER AUTHORIZATION ON TYPE CREATE TYPE Overflows or returns NULL if the number of users and roles exceeds 32,767. |
reserved | smallint | Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. |
collationid | int | If character based, collationid is the id of the collation of the current database; otherwise, it is NULL. |
usertype | smallint | User type ID. Overflows or returns NULL if the number of data types exceeds 32,767. |
variable | bit | Variable-length data type. 1 = True 0 = False |
allownulls | bit | Indicates the default nullability for this data type. This default value is overridden by if nullability is specified by using CREATE TABLE or ALTER TABLE. |
type | tinyint | Physical storage data type. |
printfmt | varchar(255) | Identified for informational purposes only. Not supported. Future compatibility is not guaranteed. |
prec | smallint | Level of precision for this data type. -1 = xml or large value types. |
scale | tinyint | Scale for this data type, based on precision. NULL = Data type is nonnumeric. |
collation | sysname | If character based, collation is the collation of the current database; otherwise, it is NULL. |
See Also
Compatibility Views (Transact-SQL)
Mapping System Tables to System Views (Transact-SQL)