Novidades – Microsoft SQL Server 2012 – Novas Funções de Conversão

Pessoal, bom dia.

Estou de volta com mais um post sobre as Novidades do Microsoft SQL Server 2012!

Hoje vou destacar para vocês as novas funções de conversão que foram adicionadas nesta nova versão.

Desde de versões mais antigas o SQL Server oferece um grande suporte a conversão de dados de forma Explicita ou Implicita através das Funções Convert e Cast. Nesta nova versão a Microsoft através do seu time de desenvolvimento e engenharia introduziu mais algumas funções de conversão de valores, que trabalham diretamente com as já conhecidas.

Estas novas funções apresentam como diferencial a tentativa prévia de execução do código sem a geração de erro, o que representa um grande avanço para o compilador do SQL Server em relação as versões anteriores, além desta tentativa de execução, as novas versões podem ser adaptadas ao Idioma do Sistema Operacional, possibilitando o uso de opções e propriedades na Sintaxe do comando que identifiquem para qual idioma a conversão deverá ser realizada. Um pré-requisito importante para o funcionamento destas funções é a integração com .Net Framework, com base, nas enumerações System.Globalization.NumberStyles e DateTimeStyles.  O que permite o reconhecimento do Idioma Nativo do Sistema Operacional.

A seguir apresenta a tabela de Idiomas reconhecidos e Suportados para estas funções:

Nome completo Alias LCID Cultura específica
us_english Inglês 1033 en-US
Deutsch Alemão 1031 de-DE
Français Francês 1036 fr-FR
日本語 Japonês 1041 ja-JP
Dansk Dinamarquês 1030 da-DK
Español Espanhol 3082 es-ES
Italiano Italiano 1040 it-IT
Nederlands Holandês 1043 nl-NL
Norsk Norueguês 2068 nn-NO
Português Português 2070 pt-PT
Suomi Finlandês 1035 fi
Svenska Sueco 1053 sv-SE
čeština Tcheco 1029 Cs-CZ
magyar Húngaro 1038 Hu-HU
polski Polonês 1045 Pl-PL
română Romano 1048 Ro-RO
hrvatski Croata 1050 hr-HR
slovenčina Eslovaco 1051 Sk-SK
slovenski Esloveno 1060 Sl-SI
ελληνικά Grego 1032 El-GR
български Búlgaro 1026 bg-BG
русский Russo 1049 Ru-RU
Türkçe Turco 1055 Tr-TR
British Inglês   britânico 2057 en-GB
eesti Estoniano 1061 Et-EE
latviešu Letão 1062 lv-LV
lietuvių Lituano 1063 lt-LT
Português   (Brasil) Português do Brasil 1046 pt-BR
繁體中文 Chinês   tradicional 1028 zh-TW
한국어 Coreano 1042 Ko-KR
简体中文 Chinês   simplificado 2052 zh-CN
Árabe Árabe 1025 ar-SA
ไทย Tailandês 1054 Th-TH

Dentre estas novas funções, destaco:

  • PARSE: Retorna um valor convertido com base em uma expressão e um tipo.
  • TRY_PARSE: Retorna um valor convertido com base em uma expressão e um tipo. Em caso de erro de conversão retorna null.
  • TRY_CONVERT: Similar ao CONVERT e seus estilos, porém com a “tentativa”.

A seguir apresento alguns Códigos de Exemplo, aplicados para cada função:

— Códigos de Exemplo – Função Parse: —

A) SELECT PARSE(‘Saturday, 15 December 2012’ AS datetime2 USING ‘en-US’) AS Result

B) SELECT PARSE(‘€345,98’ AS money USING ‘de-DE’) AS Result

C) SET LANGUAGE ‘English’

SELECT PARSE(’12/16/2012′ AS datetime2) AS Result

— Códigos de Exemplo – Função Try_Pares: —

A) SELECT TRY_PARSE(‘Jabberwokkie’ AS datetime2 USING ‘en-US’) AS Result

B) SELECT CASE WHEN

                       TRY_PARSE(‘Aragorn’ AS decimal USING ‘sr-Latn-CS’) IS NULL  THEN ‘True’        

                     ELSE ‘False’

                    END AS Result

 

C) SET LANGUAGE English
SELECT IIF(TRY_PARSE(’06/06/2012′ AS datetime2) IS NULL, ‘True’, ‘False’) AS Result

— Códigos de Exemplo – Função Try_Convert: —

A) SELECT CASE WHEN

TRY_CONVERT(float, ‘test’) IS NULL     THEN ‘Cast failed’

ELSE ‘Cast succeeded’

END AS Result;

B) SET DATEFORMAT dmy;
SELECT TRY_CONVERT(datetime2, ’12/31/2012′) AS Result;

————————————————————————————————————————————————————————————————————————–

Bom galera, após estes exemplos, fica mais fácil compreender e colocar em prática o uso destas Funções, vou ficar devendo a Try_Cast, que ainda não utilizei em meus ambientes de teste, mas tenho certeza que em breve vou disponibilizar algumas informações sobre ela.

Mais uma vez quero agradecer a sua visita ao meu blog.

Nos encontramos em breve.

Até mais.

Anúncios

Sobre Junior Galvão - MVP

Profissional com vasta experiência na área de Tecnologia da Informação e soluções Microsoft. Graduado no Curso Superior em Gestão da Tecnologia de Sistemas de Informação. Pós-Graduado no Curso de Gestão e Engenharia de Processos para Desenvolvimento de Software com RUP na Faculdade FIAP - Faculdade de Informática e Administração Paulista de São Paulo. Pós-Graduado em Gestão da Tecnologia da Informação Faculdade - ESAMC Sorocaba. Formação MCDBA Microsoft, autor de artigos acadêmicos e profissionais postados em Revistas, Instituições de Ensino e WebSistes. Meu primeiro contato com tecnologia ocorreu em 1995 após meus pais comprarem nosso primeiro computador, ano em que as portas para este fantástico mundo se abriram. Neste mesmo ano, comecei o de Processamento de Dados, naquele momento a palavra TI não existia, na verdade a Tecnologia da Informação era conhecida como Computação ou Informática, foi assim que tudo começou e desde então não parei mais, continuando nesta longa estrada até hoje. Desde 2001 tenho atuado como Database Administrator - Administrador de Banco de Dados - SQL Server em tarefas de Administração, Gerenciamento, Migração de Servidores e Bancos de Dados, Estratégias de Backup/Restauração, Replicação, LogShipping, Implantação de ERPs que utilizam bancos SQL Server, Desenvolvimento de Funções, Stored Procedure, Triggers. Experiência na Coordenação de Projetos de Alta Disponibilidade de Dados, utilizando Database Mirroring, Replicação Transacional e Merge, Log Shipping. Atualmente trabalho como Administrador de Banco de Dados no FIT - Instituto de Tecnologia da Flextronics, como também, Consultor em Projetos de Tunnig e Performance para clientes, bem como, Professor Titular na Fatec São Roque. Desde 2008 exerço a função de Professor Universitário, para as disciplinas de Banco de Dados, Administração, Modelagem de Banco de Dados, Programação em Banco de Dados, Sistemas Operacionais, Análise e Projetos de Sistemas, entre outras. Possuo titulações e Reconhecimentos: Microsoft MVP, MCC, MSTC e MIE.
Esse post foi publicado em Mundo SQL Server, SQL Server, VIRTUAL PASS BR e marcado , , . Guardar link permanente.

4 respostas para Novidades – Microsoft SQL Server 2012 – Novas Funções de Conversão

  1. Vitor Mendes disse:

    Ótima noticia Junior, ficar usando de funções auxiliares para conseguir uma formato especifico ou customizado de acordo com a solicitação do cliente é ruim. Uma padronização como já possui no .NET Framework e agora foi transcrevida para o SQL foi uma ótima ideia.

    Curtir

  2. Pingback: Melhorias no SQL Server 2012 « Alex Souza

  3. Pingback: SQL Server 2012 – Funções de Conversão « Vitor Mendes

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s