O artigo descreve inovações importantes introduzidas no SQL Server 2012, tendo como foco principal a programação de banco de dados, passando por novas funções e melhorias focadas no desempenho de consultas SQL.
Em que situação o tema útil:
As novas funcionalidades introduzidas no SQL Server 2012, mostradas neste artigo, são úteis para os desenvolvedores de software, analistas de sistemas e para os administradores de banco de dados. São novidades e melhorias extremamente importantes para a utilização de funções com a linguagem Transact-SQL, além de auxiliar na otimização de consultas com um novo conceito de armazenamento de índices chamado ColumnStore Index.
Resumo DevMan:
Neste artigo são mostradas algumas inovações com relação às novas funções introduzidas no SQL Server 2012. Além disso, visando o ganho em desempenho na execução de consultas SQL, são mostrados detalhes e exemplos práticos de utilização do ColumnStore Index, que é uma excelente novidade nesta versão do banco de dados SQL Server com relação ao uso e ao armazenamento de índices.
Em um mercado de tecnologia da informação onde repletas opções de ferramentas e soluções são constantemente adquiridas e utilizadas por nós, usuários de TI, há espaço e muito para as famosas inovações. Em cada nova versão ou atualização de um aplicativo importante para o negócio de nossa empresa, depositamos a credibilidade de que, junto, algo inovador possa nos surpreender e nos auxiliar no desempenho de alguns processos.
Falando em banco de dados, uma das grandes preocupações de um DBA é saber como manter um ambiente estável, performático e sem riscos, visando a satisfação dos usuários dos sistemas existentes em uma empresa. Aliado a estes aspectos, é importante que existam alternativas para que um banco de dados possa estar dentro das boas práticas com relação ao seu desempenho, garantindo boa resposta em uma ou mais bases no momento de uma requisição, seja ela simples ou complexa.
Com base nisto, a nova versão do SQL Server conta com recursos e inovações muito interessantes. Não são apenas aprimoramentos com relação à alta disponibilidade, como a introdução de uma novidade chamada AlwaysOn, para manter a contingência para grupos de bases de dados dentro de um servidor ou cluster, ou talvez na capacidade de gerenciamento, com a adição de novas views dinâmicas de monitoramento, ou ainda sobre aspectos relacionados com a segurança, onde dezenove novas permissões foram introduzidas, além de mudanças com relação às funções de servidor e acesso aos bancos de dados da instância. As inovações que mostraremos neste artigo estão relacionadas com a criação de novas funções e novos construtores dentro da linguagem Transact-Sql (T-SQL), além de passarmos por conceitos e exemplos de utilização de um recurso que promete acelerar o desempenho de consultas SQL, chamado ColumnStore Index.
Novidades para a linguagem T-SQL
Em cada nova versão do banco de dados Microsoft SQL Server, há sempre melhorias e novidades com relação à linguagem T-SQL. As demandas cada vez mais complexas, sendo elas em ambientes transacionais ou em Business Intelligence, são motivadoras para a construção de novos comandos que facilitem a programação, buscando resultados satisfatórios e mais otimizados.
Neste contexto, na versão 2012 do SQL Server, são bem variados os novos recursos para a linguagem, os quais, a partir deste artigo, serão explicados e demonstrados na prática. Para mais detalhes e outros exemplos sobre a utilização dos mesmos, no final deste artigo constam alguns links para referência, bem como para o download do gerenciador de banco de dados SQL Server em sua versão de avaliação.
Novos construtores
Visando o aumento do desempenho e a necessidade de utilizar o conceito de paginação em consultas SQL dentro do banco de dados, embora diversos frameworks sejam capazes de criar e desenvolver este conceito, desde a versão 2005 é possível codificar a paginação no SQL Server por meio de funções de ranqueamento em conjunto com as Table Expressions. Com a nova versão, o SQL Server permite usufruir de dois novos construtores chamados OFFSET e FETCH NEXT. O valor informado no parâmetro OFFSET será a quantidade de linhas que iremos desconsiderar na consulta, enquanto para FETCH NEXT, a consulta irá retornar as linhas subsequentes conforme o valor informado neste parâmetro. Vejamos um exemplo a partir da criação de uma tabela chamada CIDADE, conforme a Listagem 1.
Listagem 1. Criação de tabela e utilização dos operadores OFFSET e FETCH NEXT.
--Criação da tabela CIDADE
CREATE TABLE Cidade (
ID int PRIMARY KEY,
NOME varchar(30),
UF char(2))
--Inserção de valores para exemplos
INSERT INTO Cidade VALUES (1, 'Porto Alegre', 'RS')
INSERT INTO Cidade VALUES (2, 'São Paulo', 'SP')
INSERT INTO Cidade VALUES (4, 'Aracaju', 'SE')
INSERT INTO Cidade VALUES (5, 'Florianópolis', 'SC')
INSERT INTO Cidade VALUES (8, 'Gramado', 'RS')
INSERT INTO Cidade VALUES (9, 'Rio de Janeiro', 'RJ')
INSERT INTO Cidade VALUES (6, 'Guarulhos', 'SP')
INSERT INTO Cidade VALUES (3, 'Natal', 'RN')
--Lista todos os dados ordenados por UF
SELECT ID, NOME, UF
FROM Cidade
ORDER BY UF
--Utilizando os operadores OFFSET e FETCH NEXT
SELECT ID, NOME, UF
FROM Cidade
ORDER BY UF
OFFSET 2 ROWS
FETCH NEXT 3 ROWS ONLY
O resultado das consultas pode ser analisado, respectivamente, nas Tabelas 1 e 2.
ID |
NOME |
UF |
9 ... |
Confira outros conteúdos:
Black November
Desconto exclusivo para as primeiras 200 matrículas!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 59,00
Total: R$ 708,00
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 64,00 /mês
Total: R$ 768,00
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.