Partilhar via


Tipos de dados (Transact-SQL)

No SQL Server, cada coluna, variável local, expressão e parâmetro tem um tipo de dados relacionado. O tipo de dados é um atributo que especifica o tipo de dados que o objeto pode manter: de inteiros, de caracteres, monetários, de data e hora, de cadeia de caracteres binários etc.

O SQL Server oferece um conjunto de tipos de dados do sistema que define todos os tipos de dados que podem ser usados com o SQL Server. Você também pode definir seus próprios tipos de dados no Transact-SQL ou no Microsoft.NET Framework. Os tipos de dados de alias têm como base os tipos de dados fornecidos pelo sistema. Para obter mais informações sobre tipos de dados de alias, consulte CREATE TYPE (Transact-SQL). Os tipos definidos pelo usuário obtêm características dos métodos e operadores de uma classe criada com o uso de uma das linguagens de programação oferecidas por .NET Framework.

Quando duas expressões que possuem diferentes tipos de dados, agrupamentos, precisão, escala ou comprimento são combinadas por um operador, as características do resultado são determinadas pelo seguinte:

  • O tipo de dados do resultado é determinado pela aplicação das regras de precedência de tipos de dados em relação aos tipos de dados de expressões de entrada. Para obter mais informações, consulte Precedência de tipo de dados (Transact-SQL).

  • O agrupamento do resultado é determinado pelas regras de precedência de agrupamento quando o tipo de dados de resultado é char, varchar, text, nchar, nvarchar ou ntext. Para obter mais informações, consulte Precedência de agrupamento (Transact-SQL).

  • A precisão, a escala e o tamanho do resultado dependem da precisão, da escala e do tamanho das expressões de entrada. Para obter mais informações, consulte Precisão, escala e comprimento (Transact-SQL).

SQL Server oferece sinônimos de tipos de dados para compatibilidade com ISO. Para obter mais informações, consulte Sinônimos de tipo de dados (Transact-SQL).

Categorias de tipos de dados

Os tipos de dados em SQL Server são organizados nas seguintes categorias:

Numéricos exatos

Cadeias de caracteres Unicode

Numéricos aproximados

Cadeia de caracteres binária

Data e hora

Outros tipos de dados

Cadeias de caracteres

 

Em SQL Server, com base em suas características de armazenamento, alguns tipos de dados são designados como pertencendo aos seguintes grupos:

  • Tipos de dados com valores grandes: varchar(max), nvarchar(max) e varbinary(max)

  • Tipos de dados de objetos grandes: text, ntext, image, varchar(max), nvarchar(max), varbinary(max) e xml

    ObservaçãoObservação

    sp_help retorna -1 como o comprimento dos tipos de dados de valor grande e xml.

Numéricos exatos

bigint

numeric

bit

smallint

decimal

smallmoney

int

tinyint

money

 

Numéricos aproximados

float

real

Data e hora

date

datetimeoffset

datetime2

smalldatetime

datetime

time

Cadeias de caracteres

char

varchar

text

 

Cadeias de caracteres Unicode

nchar

nvarchar

ntext

 

Cadeias de caracteres binárias

binary

varbinary

image

 

Outros tipos de dados

cursor

timestamp

hierarchyid

uniqueidentifier

sql_variant

xml

table

Tipos espaciais

Consulte também

Referência

CREATE PROCEDURE (Transact-SQL)

CREATE TABLE (Transact-SQL)

DECLARE @local\_variable (Transact-SQL)

EXECUTE (Transact-SQL)

Expressões (Transact-SQL)

Funções internas (Transact-SQL)

LIKE (Transact-SQL)

sp_droptype (Transact-SQL)

sp_help (Transact-SQL)

sp_rename (Transact-SQL)