Типы данных (Transact-SQL)Data types (Transact-SQL)

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server даБаза данных SQL Azure даAzure Synapse Analytics (хранилище данных SQL) даParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure Synapse Analytics (SQL DW) yesParallel Data Warehouse

В SQL ServerSQL Server у каждого столбца, локальной переменной, выражения и параметра есть определенный тип данных.In SQL ServerSQL 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 ServerSQL Server предоставляет набор системных типов данных, определяющих все типы данных, которые могут использоваться в SQL ServerSQL Server.supplies a set of system data types that define all the types of data that can be used with SQL ServerSQL Server. В Transact-SQLTransact-SQL или MicrosoftMicrosoft.NET Framework.NET Framework можно также определять собственные типы данных.You can also define your own data types in Transact-SQLTransact-SQL or the MicrosoftMicrosoft .NET Framework.NET Framework. Псевдонимы типов данных основываются на системных типах.Alias data types are based on the system-supplied data types. Дополнительные сведения о псевдонимах типов данных см. в статье CREATE TYPE (Transact-SQL).For more information about alias data types, see CREATE TYPE (Transact-SQL). Определяемые пользователем типы данных обладают свойствами, зависящими от методов и операторов класса, который создается для них на одном из языков программирования, которые поддерживаются .NET Framework.NET Framework.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.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. Дополнительные сведения см. в разделе Приоритет типов данных (Transact-SQL).For more information, see Data Type Precedence (Transact-SQL).
  • Параметры сортировки результата определяются правилами очередности параметров сортировки, если тип данных результата — char, varchar, text, nchar, nvarchar или ntext.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. Дополнительные сведения см. в статье Очередность параметров сортировки (Transact-SQL).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. Дополнительные сведения см. в разделе Точность, масштаб и длина (Transact-SQL).For more information, see Precision, Scale, and Length (Transact-SQL).

SQL ServerSQL Server предоставляет синонимы типов данных для совместимости со стандартом ISO.provides data type synonyms for ISO compatibility. Дополнительные сведения см. в статье Синонимы типов данных (Transact-SQL).For more information, see Data Type Synonyms (Transact-SQL).

Категории типов данныхData type categories

Типы данных в SQL ServerSQL Server объединены в следующие категории:Data types in SQL ServerSQL Server are organized into the following categories:

Точные числаExact numerics Символьные строки в ЮникодеUnicode character strings
Приблизительные числаApproximate numerics Двоичные данныеBinary strings
Дата и времяDate and time Прочие типы данныхOther data types
Символьные строкиCharacter strings

В зависимости от параметров хранения, некоторые типы данных в SQL ServerSQL Server относятся к следующим группам:In SQL ServerSQL Server, based on their storage characteristics, some data types are designated as belonging to the following groups:

  • Типы данных больших значений: varchar(max) и nvarchar(max)Large value data types: varchar(max), and nvarchar(max)

  • Типы данных больших объектов: text, ntext, image, varbinary(max) и xmlLarge object data types: text, ntext, image, varbinary(max), and xml

    Примечание

    Хранимая процедура sp_help возвращает -1 в качестве значения длины для типов данных большого объема и xml.sp_help returns -1 as the length for the large-value and xml data types.

Точные числаExact numerics

bigintbigint numericnumeric
bitbit smallintsmallint
decimaldecimal smallmoneysmallmoney
intint tinyinttinyint
moneymoney

Приблизительные числаApproximate numerics

floatfloat realreal

Дата и времяDate and time

datedate datetimeoffsetdatetimeoffset
datetime2datetime2 smalldatetimesmalldatetime
datetimedatetime timetime

Символьные строкиCharacter strings

charchar varcharvarchar
texttext

Символьные строки в ЮникодеUnicode character strings

ncharnchar nvarcharnvarchar
ntextntext

Двоичные данныеBinary strings

binarybinary varbinaryvarbinary
imageimage

Прочие типы данныхOther data types

курсорcursor rowversionrowversion
hierarchyidhierarchyid uniqueidentifieruniqueidentifier
sql_variantsql_variant xmlxml
Типы пространственной геометрииSpatial Geometry Types Типы пространственной географииSpatial Geography Types
tabletable

См. также разделSee also

CREATE PROCEDURE (Transact-SQL)CREATE PROCEDURE (Transact-SQL)
CREATE TABLE (Transact-SQL)CREATE TABLE (Transact-SQL)
DECLARE @local_variable (Transact-SQL) EXECUTE (Transact-SQL)DECLARE @local_variable (Transact-SQL) EXECUTE (Transact-SQL)
Выражения (Transact-SQL)Expressions (Transact-SQL)
Функции (Transact-SQL)Functions (Transact-SQL)
LIKE (Transact-SQL)LIKE (Transact-SQL)
sp_droptype (Transact-SQL)sp_droptype (Transact-SQL)
sp_help (Transact-SQL)sp_help (Transact-SQL)
sp_rename (Transact-SQL)sp_rename (Transact-SQL)