terça-feira, 5 de julho de 2011

Treinamento SQL Server em Chapecó/SC

Em parceria com o DEATEC, de Chapecó/SC, promovemos no período de 28/06 e 02/07 um treinamento em SQL Server.

O curso teve a carga horária de 22 horas, onde foram abordados em linhas gerais os seguintes tópicos: SQL Básico, Tabelas Temporárias, Stored Procedures, Triggers, Functions, SQL Dinâmico, Views, Transações, Tuning e Particionamento.

Além da ementa, todos os alunos tiveram oportunidades de trazer outros tópicos que foram abordados, e também dificuldades específicas encontradas dentro das empresas.

Também foi importante o repasse de uma metodologia baseada em um check-list, para apurar possíveis problemas que afetam a performance do banco de dados.

A ementa do curso foi formada através de uma pesquisa realizada com todos os associados que apontou dentre vários outros tópicos, informações sobre a necessidade de outros cursos técnicos, gerenciais e que envolvem o setor de TI e automação.

Foram 16 alunos de 16 empresas participantes:
- Aurora
- Auto Viação Chapecó
- Gama Tecnologia
- H & S
- H2J Soluções
- Infogen Sistemas
- Log e CIA
- Mantomaq
- Onsis Sistemas
- SGI Sistemas
- Unoesc Chapecó
- Vision System

"Formar uma turma enxuta, com um equipamento por participante, além de fazer tudo de forma prática, com a ementa baseada em pesquisa realizada anteriormente ao curso, foi importante pois impactou diretamente no nível de aprendizado dos alunos." ressalta Francis Marcel Post, presidente do DEATEC.

O aproveitamento do curso foi excepcional pois todos os participantes já tem contato com o SQL Server em suas atividades, o que oportunizou a abordagem de tópicos mais avançados.

Mais informações:
DEATEC - Polo Tecnológico de Chapecó/SC
www.deatec.org.br

quarta-feira, 15 de junho de 2011

Centro de Treinamento SQL 2008

Site com excelentes recursos para quem deseja conhecer as ferramentas do SQL Server.

http://technet.microsoft.com/pt-br/hh210186

[]s

Péricles.

domingo, 13 de março de 2011

Estudando para prova 70-433 de SQL 2008

Pessoal,

segue link interessante para aqueles que estão estudando para a prova de entrada do SQL 2008.

http://estudandopara70433.wordpress.com/

abraços,

Péricles.

sábado, 12 de março de 2011

Google Maps - Geocode pelo Endereço

Olá,

existe uma forma de retornar a Latitude/Longitude de um determinado endereço, utilizando-se a API do Google Maps, a partir do SQL Server.

No mundo real, acredito que tal aplicação não estaria dentro do banco de dados, e sim em uma aplicação CLR, porém, para ilustrar o recurso disponível no SQL, resolvi demonstrá-lo aqui.

O objeto a ser utilizado é o MSXML2.ServerXMLHttp, praticamente da mesma forma que é feito em AJAX, e é acessado através das Procedures de Automação OLE do SQL Server, e para isto, você precisa habilitar o recurso.

Testei no SQL 2005 e 2008, não sei dizer se funciona no SQL 2000.

Abstract: using the SQL Server to return the coordinates of an address at Google Maps with OLE Automation Procedures (XMLHttp GET).

Segue o código:

-- Para habilitar o uso de OLE
-- Activate OLE
sp_configure 'show advanced options', 1
go
reconfigure
go
sp_configure 'Ole Automation Procedures', 1
go
reconfigure
go

-- Variaveis
-- Variables
DECLARE @Response VARCHAR(8000)
DECLARE @XML XML
DECLARE @Obj INT
DECLARE @Result INT
DECLARE @HTTPStatus INT
DECLARE @ErrorMsg VARCHAR(MAX)
DECLARE @URL VARCHAR(MAX)
DECLARE @GPSLatitude NUMERIC(20,6)
DECLARE @GPSLongitude NUMERIC(20,6)
DECLARE @Endereco VARCHAR(100)

-- Endereco para teste
-- Test address
SELECT @Endereco = 'Av. Paulista, 500, Sao Paulo, SP'
SELECT @URL = 'http://maps.google.com/maps/api/geocode/xml?sensor=false&address=' + @Endereco

-- Criacao do objeto XMLHttp
-- Object XMLHttp creation
EXEC @Result = sp_OACreate 'MSXML2.ServerXMLHttp', @Obj OUT

-- Envio do comando GET
-- GET command
BEGIN TRY
EXEC @Result = sp_OAMethod @Obj, 'open', NULL, 'GET', @URL, false
EXEC @Result = sp_OAMethod @Obj, 'setRequestHeader', NULL,
'Content-Type', 'application/x-www-form-urlencoded'

EXEC @Result = sp_OAMethod @Obj, send, NULL, ''
EXEC @Result = sp_OAGetProperty @Obj, 'status', @HTTPStatus OUT
EXEC @Result = sp_OAGetProperty @Obj, 'responseXML.xml', @Response OUT
END TRY
BEGIN CATCH
-- Controle de Erro com bloco Try/Catch
-- Error Control
SELECT @ErrorMsg = ERROR_MESSAGE()
END CATCH

-- Destruicao do objeto
-- Object free
EXEC @Result = sp_OADestroy @Obj

-- Transformacao do resultado em XML
-- Convert result in XML Datatype
SELECT @XML = CAST(@Response AS XML)

-- Leitura dos valores desejados (latitude/longitude)
-- Gathering coordinates from XML
SELECT @GPSLatitude = @XML.value('(/GeocodeResponse/result/geometry/location/lat) [1]', 'numeric(10,6)')
SELECT @GPSLongitude = @XML.value('(/GeocodeResponse/result/geometry/location/lng) [1]', 'numeric(10,6)')

-- Exibicao dos resultados
-- Results
SELECT @GPSLatitude AS [Latitude], @GPSLongitude AS [Longitude], @XML AS [XML]
go

[]s

Péricles.

sexta-feira, 4 de março de 2011

Five Classic Videos Every DBA Should Watch

Brent Ozar made a series of interviews and presentations that we should watch carefully.

It's actually Four videos...

http://www.brentozar.com/archive/2011/03/five-videos-every-dba-should-watch/

Péricles.

quarta-feira, 2 de março de 2011

Check DB

Olá a todos !

Só pra lembrar, comando básico para fazer uma checagem no database...
De vez em quando é bom !

ALTER DATABASE Pubs SET SINGLE_USER
go
DBCC CHECKDB (Pubs, REPAIR_ALLOW_DATA_LOSS)
go
ALTER DATABASE Pubs SET MULTI_USER
go

Troque "Pubs" pelo nome do database em questão.

O database deve estar em SINGLE_USER MODE.

O parâmetro importante do CHECKDB tem 3 opções:
- REPAIR_ALLOW_DATA_LOSS: esta forma de reparo pode causar a perda de dados.
- REPAIR_FAST: mantido por questões de compatibilidade, não faz nada estrutural.
- REPAIR_REBUILD: corrige estruturas que não irão causar perda de dados.

Abraços.

sábado, 19 de fevereiro de 2011

SQLRockstar - English SQL Bloggers

I found a very nice SQL Blog today from Thomas LaRock.

He made a special list of SQL Bloggers grouping them like the database names: Master, ResourceDB, MSDB, Model and TempDB.

He couldn't be more nerd...

It worths the look:
http://thomaslarock.com/rankings/#axzz1DIObJzHY

See ya.