LOGIN:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

SQL Server

Feed da seção SQL Server

Newsletter de SQL Server


Quinta-feira, 01/11/2007 - 08:55 - Por Thiago Caserta
Seções relacionadas:

Convert e Cast para SQL Server - Transact SQL

A maioria dos que utilizam bancos de dados sabe que há comandos específicos que são praticamente uma "mão na roda", por assim dizer, pois nos ajudam, e em muito, em algumas necessidades específicas.

Bem, neste artigo falarei de dois destes comandos, conhecidos também como Transact-SQL, para o SQL Server .

Que tal converter uma expressão de um certo tipo de dado para outro tipo?

O CONVERT e o CAST executam tal funcionalidade.

Sintaxe do comando CAST:

CAST(coluna AS tipo(comprimento))

Sintaxe do comando CONVERT:

CONVERT(tipo(comprimento), coluna , estilo)

Onde:

  • Coluna:

É o campo o qual quer se aplicar o CAST ou o CONVERT.

  • Tipo:

É o tipo de dados alvo, exemplo: varchar(), int, binary, etc.

  • Comprimento:

É um parâmetro opcional de tipos nchar, nvarchar, char, varchar, binary, ou varbinary.

Para o CONVERT, se o comprimento não for especificado, o padrão é de 30 caracteres.
  • Estilo:

É o estilo, ou formato, de data desejada para conversão.

Exemplos:

Neste exemplo o CONVERT e o CAST redimensionam o campo com 2 casas decimais para 4 casas:

DECLARE @Variavel DECIMAL(5, 2)

SET @Variavel = 20.55

Usando CONVERT:

SELECT

CONVERT(decimal(10,4),

CONVERT(varbinary(20), @Variavel))

Usando CAST

SELECT

CAST(CAST(@Variavel AS varbinary(20)) AS decimal(10,4))

Neste exemplo o CAST pega os 10 primeiros caracteres:

DECLARE @Variavel varchar(25)

SET @Variavel = 'SQL Server Imasters'

SELECT

@Variavel AS DescricaoCompleta ,

CAST(@Variavel AS char(10)) AS Descricao10

Exemplo com Datas:

Neste exemplo o CAST converte a data atual para o formato extenso EUA e o CONVERT para o formato padrão BR

SELECT

GETDATE() AS Data,

CAST(GETDATE() AS varchar(30)) AS DataExtensoEUA,

CONVERT(varchar(30), GETDATE(), 103) AS DataPadraoBR

Há uma pequena confusão de interpretação do SQL Server com respeito a datas.

Os anos com dois dígitos têm uma interrupção padrão em 2049, isto é, o ano de dois dígitos 49 é interpretado como 2049, porém o ano de dois dígitos 50 é interpretado como 1950. Muitas aplicações cliente, tais como aquelas baseadas em objetos de automatização, usam o ano de interrupção padrão 2030. O SQL Server fornece a opção de configuração do ano interrupção padrão.

Eu sempre recomendo a utilização de quatro dígitos no que se refere a ano justamente para não haver confusões neste sentido.

Abaixo a tabela com a relação dos tipos de datas que podemos utilizar.

Essa mesma tabela pode ser visualizada pelo site oficial da comunidade MSDN Microsoft dos Estados Unidos.

Tabela com estilos de data do CONVERTTabela com estilos de data do CONVERT

Na próxima matéria falarei mais sobre SQL Server e comandos Transact-SQL.

Até mais.

Todos os artigos de Thiago Caserta

1 comentários publicados

  • 1. Dúvida

    Quinta-feira, 21/08/2008, por Ricardo Johnny

    Olá Thiago Caserta, tudo bem?
    Vi que vc bem com SQL Server, tenho uma dúvida em relação a manipulação de dados no banco em seu respectivos campos...

    Exemplo:
    Ao inserir os dados no campo com o valor de "53482" ele auto completa com uma virgula e dois zeros(,00) ficando assim: "53482,00" isso por que a tabela é protegida e não posso alterar o default que é "0,00"(O tipo do campo é numérico), mas ele deveria ficar assim: "534,82", teria alguma função no SQL que possa corrir isso? porque são muitos dados e não da pra corrigir manualmente...

    Se puder me ajudar.. Obrigado...

    Responder comentário

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Thiago Caserta é Graduando em Análise de Sistemas pela Metrocamp em Campinas/SP, formado em Sistemas de Informação pelo Politécnico Bento Quirino, possui certificações de empresas renomeadas na área de TI. Trabalha atualmente como DBA SQL Server na IBM Brazil. É grande contribuinte da comunidade Microsoft com foco em banco de dados - SQL Server."


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.