Tipos de dados do servidor SQL

Tipos de dados do servidor SQL

Os tipos de dados são um conceito fundamental ao trabalhar com bancos de dados. No servidor SQL, cada coluna, variável, expressão ou parâmetro compreende um tipo de dados específico. Portanto, entender quais tipos de dados, vários tipos de dados e como usá -los são muito importantes como usuário do SQL Server.

Neste guia abrangente, você aprenderá sobre os fundamentos dos tipos de dados no servidor SQL e em vários cenários que você pode usá -los.

Requisitos

Para acompanhar este guia e garantir a máxima compatibilidade, verifique se você possui:

  1. Microsoft SQL Server 2017 e acima.
  2. MS SQL Server Management Studio.
  3. Exemplo de banco de dados, como o banco de dados WideWorldImporters.

O que é um tipo de dados?

Definimos um tipo de dados como um atributo que determina o tipo de dados mantidos por um objeto específico. Em termos simples, um tipo de dados determina que tipo de valor o objeto manterá. Por exemplo, se definirmos o tipo de dados de uma coluna específica como um número inteiro, os únicos valores armazenados na coluna são do tipo inteiro.

O SQL Server fornece vários tipos de dados, conforme discutido neste guia.

Categorias de tipo de dados do servidor SQL

Podemos classificar os tipos de dados do SQL Server em várias categorias principais como:

  1. Tipos numéricos exatos
  2. Tipos numéricos aproximados
  3. Tipos de dados de data e hora
  4. Cordas de personagem
  5. Cordas binárias
  6. Strings de caracteres unicode
  7. Outros tipos de dados

Vamos olhar para cada categoria e descrever vários tipos de dados.

Tipos numéricos exatos

Como o nome sugere, os tipos numéricos exatos armazenam valores numéricos exatos, como números inteiros, decimais e valores monetários. Cada tipo numérico contém um valor mínimo e máximo que ele pode armazenar. Pequenos tipos de dados são úteis quando você precisa economizar memória, enquanto grandes tipos de dados são úteis para armazenar grandes valores em despesas para a memória.

A tabela a seguir mostra os tipos de dados numéricos exatos e seus valores de min, max e armazenamento.

Tipo Min Máx Armazenar
Int -2147483648 2147483647 4 bytes
Bigint -9223372036854775808 9223372036854775807 8 bytes
Pedaço 0 1 1 byte
Decimal −10^38+1 0^381−1 Depende da precisão

1 - 9 (5 bytes)

10 - 19 (9 bytes)

20 - 28 (13 bytes)

29 - 38 (17 bytes)

Dinheiro -922337203685477.5808 922337203685477.5807 8 bytes
Numérico −10^38+1 10^381−1 Dependendo da precisão, 5 - 17 bytes
Smallint -32768 32767 2 bytes
Smallmoney - 214748.3648 214748.3647 4 bytes
Tinyint 0 255 2 bytes

É uma excelente decisão para cuidar do melhor tipo, dependendo de suas necessidades.

Tipos numéricos aproximados

Tipos aproximados são usados ​​para armazenar valores de ponto flutuante. Eles são comumente encontrados em ambientes críticos de precisão, como cálculos científicos.

A tabela abaixo mostra os tipos e seus min, max e tamanho de armazenamento.

Tipo Min Máx Armazenar
Float (n) - 1.79e+308 1.79e+308 Estar sujeito a valor em n
real -3.40E+38 3.40E+38 4 bytes

Tipos de dados de data e hora

Os tipos de dados de data e hora são usados ​​até as informações de data e hora.

Tipo Min Máx Armazenar
data 0001-01-01 9999-12-31 3 bytes
DateTime2 0001-01-01 9999-12-31 6 bytes
Data hora 1753-01-01 9999-12-31 8 bytes
tempo 00:00:00.0000000 23:59:59.9999999 5 bytes
SmallDateTime 1900-01-01 2079-06-06 4 bytes
DateTimeOffset 0001-01-01 9999-12-31 10 bytes

Tipos de string de caracteres

Os tipos de cordas de caracteres são usados ​​para armazenar caracteres de comprimento fixo ou de variável.

Tipo Min Máx Armazenar
Char (n) 0 chars 8000 chars N bytes
Varchar 0 chars 8000 chars N + 2 bytes
Varchar (Max) 0 chars 2^31 chars N + 2 bytes
texto 0 chars 2147483647 CHARS N + 4 bytes

Tipos de cordas binárias

Usado para armazenar tipos de data binária de comprimento fixo e variável.

Tipo Min Máx Armazenar
binário 0 bytes 8000 bytes N bytes
varbinário 0 bytes 8000 bytes Comprimento dos dados + 2 bytes
imagem 0 bytes 2147483647 Bytes

O tipo de dados da imagem está preterido em algumas versões do servidor SQL.

Strings de caracteres unicode

Armazenamento de dados de comprimento fixo ou variável.

Tipo Min Máx Armazenar
Nchar 0 chars 4000 chars 2 * n bytes
nvarchar 0 chars 4000 chars 2 * n bytes
ntext 0 chars 1073741823 CHARS 2 * comprimento de STR

Outros tipos de dados

O SQL Server fornece outros tipos de dados para casos de uso específicos. Exemplos incluem:

  1. Cursor - usado para armazenar variáveis ​​usadas em uma referência de cursor.
  2. Xml - usado para manter dados XML
  3. Identificador único - Armazia 16 bytes Valor GUID

Você pode aprender mais sobre outros tipos de dados no recurso fornecido.

Fechamento

Este guia ensinou a você o básico dos tipos de dados do servidor SQL, seus valores mínimos, máximos e de armazenamento. Use essas informações para determinar o melhor tipo de dados para as necessidades do seu banco de dados.