Este artigo abordará algumas melhorias introduzidas na Transact-SQL a partir da versão 2008 do SQL Server. Nosso foco será a apresentação de funções e tipos de dados associados à manipulação de datas e hora. Além disso, falaremos um pouco sobre o uso do merge e também sobre a definição de variáveis e inserção de múltiplas linhas.
Em que situação o tema útil:
O uso do Transact-SQL é essencial para aqueles que trabalham com SQL Server no seu dia a dia. Neste sentido, este artigo contribui trazendo algumas melhorias pelas quais a linguagem SQL do SQL Server vem passando.
Resumo DevMan
A Transact-SQL é uma poderosa linguagem de programação para desenvolver e gerenciar bancos de dados no SQL Server. Como outras tecnologias, ela vem passando por uma constante evolução nos últimos anos e muitas dessas melhorias foram inseridas justamente na versão 2008 do SQL Server. Algumas dessas melhorias serão apresentadas e discutidas ao longo deste artigo.
O Transact-SQL é uma extensão do SQL-92, padronizada e publicada pela ANSI. Normalmente quando falamos em extensão ao SQL, imagina-se apenas comandos SQL DML e DDL (ler Nota DevMan 1) utilizados em aplicativos em OLTP. Entretanto, o T-SQL vai muito além: é uma poderosa linguagem não apenas para manipular dados, mas capaz de executar rotinas administrativas relacionadas a segurança, integridade e manutenção do SQL Server. Para ilustrar, podemos dizer que, dentre outras, o Transact-SQL evolui as seguintes características do SQL:
· Controle do fluxo da linguagem;
· Variáveis locais;
· Várias funções de suporte ao processamento de strings, datas, matemáticas, etc;
· Melhoramento para as declarações DELETE e UPDATE.
Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (base de dados relacional). Muitas das características originais do SQL foram inspiradas na álgebra relacional.
A linguagem SQL é um grande padrão de banco de dados. Isto decorre da sua simplicidade e facilidade de uso. Ela se diferencia de outras linguagens de consulta a banco de dados no sentido em que uma consulta SQL especifica a forma do resultado e não o caminho para chegar a ele. Ela é uma linguagem declarativa em oposição a outras linguagens procedurais. Isto reduz o ciclo de aprendizado daqueles que se iniciam na linguagem.
Embora o SQL tenha sido originalmente criado pela IBM, rapidamente surgiram vários "dialetos" desenvolvidos por outros produtores. Essa expansão levou à necessidade de ser criado e adaptado um padrão para a linguagem. Esta tarefa foi realizada pela American National Standards Institute (ANSI) em 1986 e ISO em 1987.
A SQL é subdividida em três sub-linguagens, que são:
· DDL (Data Definition Language): que apresenta uma série de comandos que permitem a definição dos dados. Dentre os principais comandos, podemos destacar o CREATE, que é destinado à criação do banco de dados e das tabelas que o compõe, além das relações existentes entre as tabelas. Outros exemplos de comandos DDL que podemos citar neste momento são: ALTER e DROP;
· DML (Data Manipulation Language): que apresenta uma série de comandos destinados à manipulação de dados, tais como: consultas, inserções, exclusões e alterações, para um ou mais registros de uma ou mais tabelas de maneira simultânea. Dentre alguns exemplos de comandos ...