Tipi di dati (Transact-SQL)Data types (Transact-SQL)

SI APPLICA A: sìSQL Server sìDatabase SQL di Azure sìAzure SQL Data Warehouse sìParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

In SQL ServerSQL Server a ogni colonna, variabile locale, espressione e parametro è associato un tipo di dati.In SQL ServerSQL Server, each column, local variable, expression, and parameter has a related data type. Un tipo di dati è un attributo che specifica il tipo di dati che l'oggetto può contenere, ovvero numeri interi, caratteri, valute, date e ore, stringhe binarie e così via.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.

In SQL ServerSQL Server è disponibile un set di tipi di dati di sistema che definisce tutti i tipi di dati utilizzabili con 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. È anche possibile definire tipi di dati personalizzati in Transact-SQLTransact-SQL o MicrosoftMicrosoft .NET Framework.NET Framework.You can also define your own data types in Transact-SQLTransact-SQL or the MicrosoftMicrosoft .NET Framework.NET Framework. I tipi di dati alias sono basati sui tipi di dati di sistema.Alias data types are based on the system-supplied data types. Per altre informazioni sui tipi di dati alias, vedere CREATE TYPE (Transact-SQL).For more information about alias data types, see CREATE TYPE (Transact-SQL). I tipi definiti dall'utente derivano le loro caratteristiche dai metodi e dagli operatori di una classe che viene creata utilizzando uno dei linguaggi di programmazione supportati da .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.

Quando due espressioni con tipi di dati, regole di confronto, precisione, scala o lunghezza diversi vengono combinati mediante un operatore, le caratteristiche del risultato vengono determinate come descritto di seguito.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:

  • Il tipo di dati del risultato viene determinato applicando le regole sulla precedenza dei tipi di dati ai tipi di dati delle espressioni di input.The data type of the result is determined by applying the rules of data type precedence to the data types of the input expressions. Per altre informazioni, vedere Precedenza dei tipi di dati (Transact-SQL).For more information, see Data Type Precedence (Transact-SQL).
  • Le regole di confronto del risultato sono determinate dalle regole di precedenza delle regole di confronto quando il tipo di dati del risultato è char, varchar, text, nchar, nvarchar o 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. Per altre informazioni, vedere Precedenza delle regole di confronto (Transact-SQL).For more information, see Collation Precedence (Transact-SQL).
  • La precisione, la scala e la lunghezza del risultato dipendono dalla precisione, dalla scala e dalla lunghezza delle espressioni di input.The precision, scale, and length of the result depend on the precision, scale, and length of the input expressions. Per altre informazioni, vedere Precisione, scala e lunghezza (Transact-SQL).For more information, see Precision, Scale, and Length (Transact-SQL).

In SQL ServerSQL Server sono disponibili sinonimi dei tipi di dati per la compatibilità con ISO.SQL ServerSQL Server provides data type synonyms for ISO compatibility. Per altre informazioni, vedere Sinonimi dei tipi di dati (Transact-SQL).For more information, see Data Type Synonyms (Transact-SQL).

Categorie dei tipi di datiData type categories

I tipi di dati di SQL ServerSQL Server sono organizzati nelle categorie seguenti:Data types in SQL ServerSQL Server are organized into the following categories:

Dati numerici esattiExact numerics Stringhe di testo UnicodeUnicode character strings
Numerici approssimatiApproximate numerics Stringhe binarieBinary strings
Date e TimeDate and time Altri tipi di datiOther data types
Stringhe di caratteriCharacter strings

In SQL ServerSQL Server, a seconda delle caratteristiche relative all'archiviazione, alcuni tipi di dati appartengono ai gruppi seguenti:In SQL ServerSQL Server, based on their storage characteristics, some data types are designated as belonging to the following groups:

  • Tipi di dati per valori di grandi dimensioni: varchar(max) e nvarchar(max)Large value data types: varchar(max), and nvarchar(max)

  • Tipi di dati per oggetti di grandi dimensioni: text, ntext, image, varbinary(max) e xmlLarge object data types: text, ntext, image, varbinary(max), and xml

    Nota

    sp_help restituisce -1 per la lunghezza dei tipi di dati per valori di grandi dimensioni e xml.sp_help returns -1 as the length for the large-value and xml data types.

Dati numerici esattiExact numerics

bigintbigint numericnumeric
bitbit smallintsmallint
decimaldecimal smallmoneysmallmoney
intint tinyinttinyint
moneymoney

Numerici approssimatiApproximate numerics

floatfloat realreal

Date e TimeDate and time

datadate datetimeoffsetdatetimeoffset
datetime2datetime2 smalldatetimesmalldatetime
datetimedatetime timetime

Stringhe di caratteriCharacter strings

charchar varcharvarchar
texttext

Stringhe di testo UnicodeUnicode character strings

ncharnchar nvarcharnvarchar
ntextntext

Stringhe binarieBinary strings

binarybinary varbinaryvarbinary
imageimage

Altri tipi di datiOther data types

cursorcursor rowversionrowversion
hierarchyidhierarchyid uniqueidentifieruniqueidentifier
sql_variantsql_variant xmlxml
Tipi di geometria spazialeSpatial Geometry Types Tipi di geografia spazialeSpatial Geography Types
tabletable

Vedere ancheSee 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)
Espressioni ( Transact-SQL )Expressions (Transact-SQL)
Funzioni (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)