In Microsoft® SQL Server™, each column, local variable, expression, and parameter has a related data type, which is an attribute that specifies the type of data (integer, character, money, and so on) that the object can hold. SQL Server supplies a set of system data types that define all of the types of data that can be used with SQL Server. The set of system-supplied data types is shown below.
User-defined data types, which are aliases for system-supplied data types, can also be defined. For more information about user-defined data types, see sp_addtype and Creating User-defined Data Types.
When two expressions that have different data types, collations, precision, scale, or length are combined by an operator:
SQL Server provides data type synonyms for SQL-92 compatibility. For more information, see Data Type Synonyms.
Integer (whole number) data from -2^63 (-9223372036854775808) through 2^63-1 (9223372036854775807).
Integer (whole number) data from -2^31 (-2,147,483,648) through 2^31 - 1 (2,147,483,647).
Integer data from 2^15 (-32,768) through 2^15 - 1 (32,767).
Integer data from 0 through 255.
Integer data with either a 1 or 0 value.
Fixed precision and scale numeric data from -10^38 +1 through 10^38 1.
Functionally equivalent to decimal.
Monetary data values from -2^63 (-922,337,203,685,477.5808) through 2^63 - 1 (+922,337,203,685,477.5807), with accuracy to a ten-thousandth of a monetary unit.
Monetary data values from -214,748.3648 through +214,748.3647, with accuracy to a ten-thousandth of a monetary unit.
Floating precision number data from -1.79E + 308 through 1.79E + 308.
Floating precision number data from -3.40E + 38 through 3.40E + 38.
Date and time data from January 1, 1753, through December 31, 9999, with an accuracy of three-hundredths of a second, or 3.33 milliseconds.
Date and time data from January 1, 1900, through June 6, 2079, with an accuracy of one minute.
Fixed-length non-Unicode character data with a maximum length of 8,000 characters.
Variable-length non-Unicode data with a maximum of 8,000 characters.
Variable-length non-Unicode data with a maximum length of 2^31 - 1 (2,147,483,647) characters.
Fixed-length Unicode data with a maximum length of 4,000 characters.
Variable-length Unicode data with a maximum length of 4,000 characters. sysname is a system-supplied user-defined data type that is functionally equivalent to nvarchar(128) and is used to reference database object names.
Variable-length Unicode data with a maximum length of 2^30 - 1 (1,073,741,823) characters.
Fixed-length binary data with a maximum length of 8,000 bytes.
Variable-length binary data with a maximum length of 8,000 bytes.
Variable-length binary data with a maximum length of 2^31 - 1 (2,147,483,647) bytes.
A reference to a cursor.
A data type that stores values of various SQL Server-supported data types, except text, ntext, timestamp, and sql_variant.
A special data type used to store a result set for later processing .
A database-wide unique number that gets updated every time a row gets updated.
A globally unique identifier (GUID).