msdn29_capa.jpg

Clique aqui para ler todos os artigos desta edição

 

Criando consultas SQL dinamicamente

Rodrigo Sendin Silva

Este artigo discute

Este artigo usa as seguintes tecnologias

·        Recuperando nomes das tabelas e colunas do banco de dados;

·        Uso de DataAdapters e DataTables;

·        Montagem de comandos SQL em tempo de execução, com base nas definições do usuário.

Visual Studio 2005, SQL Server 2005, ADO.NET 2.0, Windows Forms 2.0.

 

Preciso de uma aplicação que seja capaz de realizar pesquisas em qualquer tabela existente no banco de dados. E que ainda seja capaz de utilizar qualquer campo como filtro, alguém poderia ajudar? Vocês devem estar pensando que estamos lidando com um usuário “megalomaníaco”, porém com o uso do ADO.NET, criar aplicações desse tipo é mais fácil do que se pensa. A coluna Mão na Massa desta edição mostrará como desenvolver uma aplicação simples que será capaz de realizar pesquisas com qualquer campo de qualquer tabela de um banco de dados do SQLServer.

Este artigo irá focar o desenvolvimento de uma aplicação Windows Forms com funcionalidades de pesquisas dinâmicas em um database SQL Server. Iremos utilizar o Visual Studio 2005, ADO.NET e SQL Server 2005 no nosso exemplo. Porém a aplicação é totalmente compatível com o Visual Studio 2003 e SQL Server 2000. Você também pode utilizar qualquer Database que desejar, desde que aceite consultas SQL e seja acessível pelo ADO.NET. Criaremos uma aplicação Windows Forms, mas com pequenos ajustes, o mesmo projeto pode ser desenvolvido em ASP.NET e com isso acessível pela Web.

Retornando os nomes das tabelas do banco de dados

Crie um novo projeto no Visual Studio 2005 do tipo Windows Application e da linguagem da sua escolha. Em seguida, no formulário principal, desenhe uma interface como mostrado na Figura 1. Essa tela deve conter quatro ComboBoxes, um Button, um ListBox e um DataGridView. Para facilitar o entendimento do código, os nomes dos controles foram alterados e estão sublinhados na figura.

 

image002.jpg

Figura 1. Desenho do formulário para pesquisa dinâmica em tabelas

Vamos declarar em nossa classe dois objetos que serão utilizados por praticamente todos os métodos (Listagem 1). O primeiro será a string de conexão com o database, e o segundo, um DataTable, objeto do ADO.NET onde iremos retornar as pesquisas para expor no DataGridView.

...

Quer ler esse conteúdo completo? Tenha acesso completo