Goodie Box – Red Gate

 

Hoje recebi um presente muito legal da Red Gate. Uma caixa de presentes contendo camiseta, pendrive, caneca, caneta, etc. Quero através deste post expressar publicamente meu agradecimento. Não somente pelos presentes, mas pelo prazer da companhia desta empresa no último ano.

A Red Gate é sem dúvida um grande parceiro. Obrigado meus amigos.

“Today I received a very nice gift Red Gate. A gift box containing a T-shirt, pen drive, cup, pen and etc. I also wish to put on the record once again my thanks. Not just the gifts, but the pleasure of the companionship in the last year.

Red Gate is no doubt a big partner. Thanks my friends!”

Abraço, Rodrigo

Definindo autenticação no IIS 7 para o SQL Monitor

Para quem instalou o SQL Monitor e configurou para trabalhar no IIS 7. Pode encontrar as mensagens de falta de credenciais iguais as das imagens abaixo:

Preste atenção nos requisitos de permissões de segurança que devem ser habilitados para o IIS7:

· Anonymous authentication

· ASP.NET impersonation

· Forms authentication

Para resolver o problema no IIS, clique sobre a o ícone da aplicação e em seguida sobre o ícone autenticação.

Logo no painel central aparecerão as formas de autenticação e no painel ação a opção Habilitar. Basta habilitar conforme os métodos destacados na imagem abaixo.

Para ter certeza da forma como deve ser a autenticação, veja a imagem que segue.

Para concluir basta rodar o SQL Monitor através da URL e definir a senha inicial. Espero que esse post ajude aos colegas que estão usando essa ótima ferramenta de monitoramento via browser para SQL Server.

E para quem não conhece basta ver meu post sobre o lançamento do SQL Monitor.

Abraço, Rodrigo

SQL Prompt 5

Pessoal,

Como todos já devem saber sou fã incondicional do SQL Prompt, por este motivo não poderia deixar de falar da nova versão. O SQL Prompt continua ótimo e agora com algumas novas funcionalidades que falo abaixo.

O que há de novo?

· Find Invalid Objects: retorna objetos que são inválidos, não podem ser executados, ou recompilados. Veja a imagem abaixo que ilustra a funcionalidade. Na parte superior do painel há a descrição dos objetos, na parte inferior o código fonte formatado para melhorar a análise e encontramos no meio um botão chamado Script selected object as ALTER, esse comando abre a tela de edição do objeto.

· Script Object as Alter: quando estamos criando diversos objetos de banco de dados que se relacionam. Por exemplo, uma view, se precisar alterar um campo de uma das tabelas que pertencem a construção da view, essa opção nos permite navegar rapidamente pelo script de edição do objeto o qual paramos sobre.

· Column dependencies: o Management Studio possui uma feature chamada View Dependencies que lista as dependências de uma tabela, o Column Dependencies do SQL Prompt 5 nos fornece as dependências no nível de colunas de uma tabela. Veja a imagem abaixo:

Para concluir, o SQLPrompt sempre foi um produto inovador que facilita o duro trabalho de dar manutenção em grandes bases de dados. Neste post falei apenas das novas features, essas novidades somadas a todas as funcionalidades já existente nas edições anteriores torna o SQL Prompt uma ferramenta de apoio indispensável para desenvolvedores e DBAs. Para saber mais do produto acesse SQLPrompt 5.

Abraço, Rodrigo.

Tratamento de Exceção no SQL Server 2008

Pessoal,

É com prazer que comunico que foi publicado na edição 82 da SQL Magazine o meu artigo sobre Tratamento de Exceções no SQL Server 2008. Onde eu abordo o assunto com exemplos e técnicas para tratamento de exceções, fornecendo uma maneira limpa e estruturada de proteger os códigos.

Veja ainda nessa edição:

  • Modelagem de uma Aplicação Web de Controle de Bolões
  • Projeto de Banco de Dados para Campanhas Publicitárias
  • Utilizando Full-Text Search
  • Tratamento de Exceção no SQL Server 2008
  • Aplicação Web com ASP.NET e PostgreSQL
  • MySQL Performance Diagnostics & Tuning Parte II
  • Automatic Storage Management
  • Especificação de Casos de Uso na Prática – Parte 2

Espero que aproveitem essa edição, comentários são bem vindos.

Abraço, Rodrigo

A importância de uma certificação

Para nós, profissionais de TI, uma certificação comprova a proficiência sobre determinada tecnologia comprovação de plenitude sobre determinada tecnologia, logo torna-se uma responsabilidade muito grande, já que o certificado atesta que o candidato passou por uma rigorosa seleção de questões, situações do cotidiano, análises e em alguns casos simulações de ambientes reais.

 

Fazendo uma analogia com alguns personagens de filmes, se tornar um profissional certificado é ser como o agente 007, afinal ele possuí licença da Rainha para matar. Outra analogia ainda melhor é que um profissional certificado é como se tornar um Jedi (Jedai).

 

Ainda fazendo analogias com filmes, Peter Parker escuta do tio Ben o conselho: “com grandes poderes vêm grandes responsabilidades”, o que irá se tornar a justificativa do enredo da história do Homem Aranha.

 

Acho que com essas analogias, fica fácil compreender a importância de uma certificação e porque os profissionais certificados têm seus currículos entre os pretendidos dos principais projetos.

 

Certificação substitui a faculdade?

Essa é uma questão antiga e muitos já responderam de diversas formas. A minha maneira de responder é dizendo “não”. Num passado muito distante, ter uma certificação eliminava muitos candidatos que estavam cursando uma faculdade ou até mesmo os que haviam concluído.

 

De qualquer maneira, os cursos de graduações têm o foco na teoria e nos conhecimentos gerais que podem trazer. Já as certificações são focadas em alguma tecnologia e no desenvolvimento de técnicos e especialistas nas mesmas. E para ter valor de mercado as certificações devem ser recicladas periodicamente.

 

Não vejo como objetivos não excludentes, do meu ponto de vista, acredito que um bom profissional é aquele que não estuda pelo título, mas sim pelo conhecimento. Logo ser graduado, certificado, pós-graduado e saber três idiomas é apenas investimentos no conhecimento e na evolução pessoal.

 

Além do mais, a maior parte dos bons profissionais de informática que eu conheço nem se formaram na área. É muito fácil aprender a desenvolver e se tornar especialista em uma linguagem, o difícil é encontrar um profissional sério e que entenda de negócios para desenvolver.

 

Demanda

 

Quando escutamos que os sistemas de informação estão necessitando cada vez mais recursos, já estamos atrasados, todos os dias novas tecnologias são produzidas e implementadas. Novas tendências tecnologias geram mais informações e por conseqüência estruturas mais complexa.

 

E quem mantém os ambientes complexos? Profissionais experientes, focados e com alto nível de formação. Quando digo alto nível de formação não estou me referindo somente à graduação, ou a certificação. Estou falando de pessoas que gostam do trabalho e por esse motivo se especializam cada vez mais.

 

Para concluir, a demanda existe, e provavelmente sempre existirá. Contudo, é bom não se iludir, pois uma certificação sozinha não é pré-requisito para garantir uma boa colocação no mercado de trabalho.

 

Meu conselho é muito estudo, graduação, pós-graduação, idiomas, certificações, bons projetos e paixão pelo trabalho. Isso irá determinar o reconhecimento e trará retorno.

 

Abraço, Rodrigo

Analisando conexões – Primeiro passo

 

Com freqüência alguns colegas me perguntam como verificar as conexões existentes ao servidor através de DMV. Eu costumo usar duas DMVs para essa tarefa.

  • sys.dm_exec_connections: informações sobre as conexões e detalhes de cada conexão
  • sys.dm_exec_sessions: informações de conexões do usuário.

Essas duas DMVs se completam, por esse motivo segue um script com a união das duas DMVs. Esse script esta sempre no meu pendrive, com o retorno simplificado de informações para uma primeira avaliação.

SELECT  
   Con.session_id,   
   Ses.login_name, Ses.program_name, Ses.host_name, 
   Ses.login_time, Ses.status, Ses.client_interface_name,
   Con.auth_scheme, Con.net_transport            
FROM 
    sys.dm_exec_connections Con   
INNER JOIN 
    sys.dm_exec_sessions Ses 
    on Ses.session_id = Con.session_id

Espero que essa query simplifique as futuras analises.

Abraço, Rodrigo