Esta e uma dica rapida pra quem tem dificuldade em trabalhar com o Intellisense do SQL Server. Para este exemplo, estou usando a versao 2008R2, entao creio que isso se aplique a todas as versoes a partir da 2005. Quando voce cria uma tabela, ou altera a estrutura de uma tabela existente (adicionando uma nova coluna), o intellisense parece nao reconhecer estas modificacoes, e atrapalha bastante durante a criacao de um codigo. Muitos desabilitam o intellisense exatamente por nao compreender o comportamento da ferramenta, porem ela e muito util. A solucao? Muito simples. Se voce utiliza a configuracao de teclado padrao do SQL Server 2005 ou superior, basta pressionar as teclas CTRL + SHIT + R. Caso voce utilize a configuracao de teclado compativel com versao 2000 e anteriores, esta tecla de atalho nao ira funcionar. Mas ai basta voce acessar o menu Editar Intellisense Atualizar Cache Local: E problema resolvido! Cada vez que fizer alteracoes nas estruturas, criar novos procedimentos, tabelas, e o intellisense teimar com voce dizendo que esta errado, voce ja sabe como resolver a bronca. Aproveitando um recente trabalho realizado, gostaria de descrever um relatorio que rapidamente desenvolvi em uma base de dados SQL Server. A situacao era a seguinte: eu havia importado a estrutura de um produto, e precisava exibir esta estrutura na forma de um relatorio. Primeiro, vamos entender o termo estrutura de um produto. A empresa em questao e uma fabrica de impressoras de plotagem (1,8m a 3,2m). A ficha tecnica da impressora e composta por varios niveis de componentes. Vou ilustrar uma composicao: Impressora XPTO modelo 1 Conjunto eletronica XPTO 1804 Tomada de embutir 3 pinos Cinta nylon media Fusivel pequeno 10A Sensor de temperatura Ventilador secagem Espaguete termo retratil Ventilador 120x120x38 c/ rosca Conector modular miniatura H89F09 Blower vacuo Blower ( Siroco ) AD xxxx 24v Conector modular miniatura H90F23 Aquecimento cabecas Resistor Fio 120R x 10W Cabo paralelo 0,20mm Apoio de silicone 13mm x 4mm Terminal KK pequeno importado O relatorio precisa aparecer formatado como esta acima (indentado nos niveis). Porem, a quantidade de niveis e indefinida. Desta forma, utilizei o conceito de recursividade. Definicoes de recursividade na internet: Recursao e um metodo de programacao no qual uma funcao pode chamar a si mesma. O termo e usado de maneira mais geral para descrever o processo de repeticao de um objeto de um jeito similar ao que ja fora mostrado. ...pt.wikipedia.org/wiki/Recursividade A recursividade na programacao de computadores envolve a definicao de uma funcao que pode invocar a si propria. Um exemplo de aplicacao da recursividade pode ser encontrado nos analisadores gramaticais recursivos para linguagens de programacao. ...pt.wikipedia.org/wiki/Recursividade_(ciencia_da_computacao) iteratividade; propriedade de formar infinitos elementos a partir de finitos aplicando-se regras logicas ou matematicaspt.wiktionary.org/wiki/Recursividade que chama a si mesmo (programa ou funcao)pt.wiktionary.org/wiki/Recursivo Para desenvolver este relatorio, eu utilizei este conceito de recursividade. Eu criei um procedimento insere os componentes, e para cada componente que esta inserindo, chama a si mesmo para repetir a explosao, independente da quantidade de niveis que houver na estrutura.O primeiro codigo que vamos analisar e o que retorna o relatorio