O SQL Server realiza algumas conversões de forma automática. Neste post veja as conversões de tipos de dados:

SELECT 1 + '1'

O comando SELECT acima retornará o valor inteiro 2, pois o caractere ‘1’ é automaticamente convertido para o valor inteiro 1. Portanto, a soma é igual a 2.

SELECT '1' + '1'

O comando SELECT acima retornará a string 11, pois os caracteres ‘1’ serão concatenados.

SELECT 'Boa sorte!' + 1

Já a linha acima retornará um erro, pois a string ‘Boa sorte!’ não pode ser convertida.

Por padrão o SQL Server converte automaticamente de strings para inteiro, o contrário não.

Para converter strings manualmente utilizamos a função CAST:

SELECT CAST('1' AS INT) + CAST('2' AS INT)

O comando acima retornará o valor 3.

Conversão de datas do formato americano para o brasileiro

Para convertermos uma data do formato dos EUA para o do Brasil, é preciso utilizar a conversão manual (explícita). Veja:

SELECT NOME,
   CAST(DAY(data) AS VARCHAR) + '/' +
   CAST(MONTH(data) AS VARCHAR) + '/' +
   CAST(YEAR(data) AS VARCHAR) AS "Data convertida"
FROM tabela

No exemplo acima, a data no formato dos EUA é “desmontada” e remontada no formado brasileiro, extraindo as informações do dia, mês e ano da data original, separadas pela barra ‘/’.

Uma forma mais fácil de fazer a conversão acima é utilizando o função FORMAT:

DECLARE @d DATETIME = getdate();  
SELECT FORMAT (@d, 'd', 'pt-BR' ) 

No exemplo acima, foi pego a data do servidor e convertida para o formato brasileiro.


A imagem abaixo mostra todas as conversões de tipos de dados explícitas e implícitas que são permitidas para tipos de dados fornecidos pelo SQL Server.

Isso inclui xml, bigint e sql_variant. Não há nenhuma conversão implícita na atribuição do tipo de dados sql_variant, mas há uma conversão implícita em sql_variant:

Conversões implícitas

Quadrados azuis: Conversão manual (explícita)
Bolinhas laranjas: Conversão automatica (implícita)

Fonte: https://docs.microsoft.com/pt-br/sql/t-sql/data-types/data-type-conversion-database-engine?view=sql-server-2017

Conheça o curso de Segurança em Redes de Computadores e entenda os diversos tipos de ataques que existem, bem como as peças do quebra-cabeça que integram a defesa de uma rede, entre elas: Firewall, IPS, Proxy, Anti-Spam, Anti-vírus, Anti-Malware, VPN, Sandboxing, NAC, etc.

CLIQUE NA IMAGEM ABAIXO E SAIBA MAIS DETALHES:

CLIQUE AQUI E SAIBA MAIS

Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Tags: |

Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?

Não enviamos spam. Seu e-mail está 100% seguro!

Sobre o Autor

Bene Silva Júnior
Bene Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *