TechNet Guru Awards – Junho 2016

Saiu o resultado do TechNet Guru de Junho de 2016 no blog WikiNinjas neste post.

Fui reconhecido pela Microsoft Technet como Technical Guru de Junho de 2016 na categoria SQL Server General and Database Engine com a publicação do artigo SQL Server Troubleshooting: How to remove a bad execution plan from plan cache.

Confiram!

Screen Shot 2016-07-29 at 2.57.17 AM

SQL Server 2014 Service Pack 2

Galera,

Foi liberado hoje o Service Pack 2 do SQL Server 2014.

O download já está disponível através do link abaixo.

Quem quiser pode conferir as principais alterações incluídas no Service Pack 2:

anúncio do SQL Server 2014 SP2 foi feito hoje no blog oficial do SQL Server.

Trabalhando com dados geográficos no SQL Server

Por mais que não seja muito comum a utilização de dados geográficos dentro do SQL Server o tipo de dados GEOGRAPHY está disponível desde a versão 2008 no SQL Server.

Para quem ainda não utilizou este recurso vou mostrar um rápido exemplo desde a criação da tabela, inserção de dados e a utilização de uma função específica para calcular a distância entre dois pontos em linha reta.

Vamos primeiramente criar a tabela.

Observem que estamos criando um campo coords do tipo GEOGRAPHY aonde irão ficar armazenadas as coordenadas propriamente ditas. O campo place será uma coluna computada utilizando a função STAsText() para retornar as coordenadas armazenadas em coords em um formato legível.


CREATE TABLE [pocGeography] (
id BIGINT IDENTITY,
name VARCHAR(1000),
coords GEOGRAPHY,
place AS coords.STAsText() );

Agora vamos para a inserção dos dados. Notem a utilização da função Point() que representa um ponto a partir das coordenadas [Latitude, Longitude] fornecidas e da função STGeomFromText() que transforma as coordenadas legíveis em um formato apto para armazenamento em um tipo de dados geográfico no SQL Server.


INSERT INTO [dbo].[pocGeography] ([name],[coords])
VALUES ('Sapiranga', geography::STGeomFromText('POINT(29.6353861 051.0069556)', 4326));
INSERT INTO [dbo].[pocGeography] ([name],[coords])
VALUES ('Porto Alegre', geography::STGeomFromText('POINT(30.0348417 051.2386778)', 4326));

Agora vamos utilizar a função STDistance() para calcular a distância entre dois pontos em linha reta.


DECLARE @src GEOGRAPHY;
DECLARE @dst GEOGRAPHY;
SET @src = (select coords from [dbo].[pocGeography] where id=2)
SET @dst = (select coords from [dbo].[pocGeography] where id=1)
--SELECT @src.STDistance(@dst)/1609.344 --Miles
SELECT @src.STDistance(@dst)/1000 --Kilometers

Resultado:

Screen Shot 2016-06-18 at 4.44.00 AM

Existem muitas outras funções, métodos e funcionalidades para trabalharmos com dados geográficos no SQL Server. Se quiserem conferir alguns métodos existentes deem uma olhada na documentação da MSDN no link abaixo:

https://msdn.microsoft.com/en-us/library/bb933802.aspx

É isso galera! Espero que tenham gostado!

Referências:

SQL Server 2016 eBook

Fala galera!

Para quem quiser dar uma olhada nas novidades e novos recursos da versão 2016 do SQL Server recomendo baixarem o eBook de introdução da versão 2016 do SQL Server disponível desde o dia 03 de Junho na sua versão final.

Baixem agora o eBook de introdução do SQL Server 2016!

Post do blog da MSDN sobre o eBook de introdução ao SQL Server 2016

Download do eBook de introdução do SQL Server 2016

SQL Server s2 Linux

Já fez a certificação para Linux? Ainda não?

Poisé. Durante o ano de 2017 veremos pela primeira vez o SQL Server em um sistema operacional Linux.

No segundo link abaixo você pode se inscrever para ficar informado sobre as novidades do SQL Server para Linux.

Anúncio do SQL Server para Linux

Página oficial do SQL Server para Linux

Screen Shot 2016-06-18 at 2.32.57 AM.png