Data Types (Transact-SQL) : This Topic Applies To
Data Types (Transact-SQL) : This Topic Applies To
THIS TOPIC APPLIES TO: SQL Server (starting with 2008) Azure SQL Database
Azure SQL Data Warehouse Parallel Data Warehouse
In SQL Server, each column, local variable, expression, and parameter has a related data
type. A data type is an attribute that specifies the type of data that the object can hold:
integer data, character data, monetary data, date and time data, binary strings, and so
on.
SQL Server supplies a set of system data types that define all the types of data that can
be used with SQL Server. You can also define your own data types in Transact-SQL or
the Microsoft .NET Framework. Alias data types are based on the system-supplied data
types. For more information about alias data types, see CREATE TYPE (Transact-SQL).
User-defined types obtain their characteristics from the methods and operators of a
class that you create by using one of the programming languages support by the .NET
Framework.
When two expressions that have different data types, collations, precision, scale, or
length are combined by an operator, the characteristics of result are determined by the
following:
The data type of the result is determined by applying the rules of data type
precedence to the data types of the input expressions. For more information,
see Data Type Precedence (Transact-SQL).
The collation of the result is determined by the rules of collation precedence
when the result data type is char, varchar, text, nchar, nvarchar, or ntext. For
more information, see Collation Precedence (Transact-SQL).
The precision, scale, and length of the result depend on the precision, scale, and
length of the input expressions. For more information, see Precision, Scale, and
Length (Transact-SQL).
SQL Server provides data type synonyms for ISO compatibility. For more information,
see Data Type Synonyms (Transact-SQL).
Character strings
In SQL Server, based on their storage characteristics, some data types are designated as
belonging to the following groups:
Exact numerics
bigint numeric
bit smallint
decimal smallmoney
int tinyint
money
Approximate numerics
float real
date datetimeoffset
datetime2 smalldatetime
datetime time
Character strings
char varchar
text
nchar nvarchar
ntext
Binary strings
binary varbinary
image
cursor rowversion
hierarchyid uniqueidentifier
sql_variant xml
table
See also
CREATE PROCEDURE (Transact-SQL)
CREATE TABLE (Transact-SQL)
DECLARE @local_variable (Transact-SQL) EXECUTE (Transact-SQL)
Expressions (Transact-SQL)
Functions (Transact-SQL)
LIKE (Transact-SQL)
sp_droptype (Transact-SQL)
sp_help (Transact-SQL)
sp_rename (Transact-SQL)