SALES: 1-800-867-1380
Microsoft Azure
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Data Types (Transact-SQL)

 

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).

Data types in SQL Server are organized into the following categories:

Exact numericsUnicode character strings
Approximate numericsBinary strings
Date and timeOther data types
Character strings

In SQL Server, based on their storage characteristics, some data types are designated as belonging to the following groups:

  • Large value data types: varchar(max), nvarchar(max), and varbinary(max)

  • Large object data types: text, ntext, image, varchar(max), nvarchar(max), varbinary(max), and xml

    System_CAPS_ICON_note.jpg Note


    sp_help returns -1 as the length for the large-value and xml data types.

Exact Numerics

bigintnumeric
bitsmallint
decimalsmallmoney
inttinyint
money

Approximate Numerics

floatreal

Date and Time

datedatetimeoffset
datetime2smalldatetime
datetimetime

Character Strings

charvarchar
text

Unicode Character Strings

ncharnvarchar
ntext

Binary Strings

binaryvarbinary
image

Other Data Types

cursortimestamp
hierarchyiduniqueidentifier
sql_variantxml
tableSpatial Types

CREATE PROCEDURE (Transact-SQL)
CREATE TABLE (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
EXECUTE (Transact-SQL)
Expressions (Transact-SQL)
Built-in Functions (Transact-SQL)
LIKE (Transact-SQL)
sp_droptype (Transact-SQL)
sp_help (Transact-SQL)
sp_rename (Transact-SQL)

Community Additions

Show:
© 2016 Microsoft