NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalTutoriaisLanodecastro : Adonetdatagrid001
Quer receber novidades e e-books gratuitos?

FILTRO DE TUTORIAIS:


Acessando um banco de dados facilmente com ADO.Net e Datagrid

 

Olá Pessoal,

 

Dando continuidade aos nossos tutoriais, hoje começaremos a trabalhar com as classes de acesso a dados.

 

Acessar base de dados é geralmente o foco de todas as aplicações voltadas para a Web, de fato é o que torna o site propriamente dito como dinâmico. O grande problema é que para acessar dados nunca foi tão simples. Em sites que não usavam uma estrutura robusta de programação, não se enxergava a necessidade de rodar consigo uma base de dados, mas este conceito mudou. Hoje em dia, por mais simples que seja, o site necessita de um banco de dados, e o problema maior é que os designers por não possuírem conhecimento em programação, acabam utilizam códigos prontos que na maioria das vezes não resolvem o problema. Solução: Pagar um programador Free-Lancer para fazer o serviço!

 

Com base nisso temos o seguinte objetivo para o nosso tutorial:

 

Objetivo: Apresentar os métodos de acesso a dados através do ADO.NET , abordando conceitos iniciais sobre o controle Datagrid com a criação de um sistema de busca simples.

 

Criaremos um sistema de busca, simulando um site de vendas de produtos. Para tanto, não será necessário criar a base de dados, pois utilizaremos o famoso Northwind juntamente com o Microsoft Access.

 

Então,

 

Crie um arquivo do tipo ASPX e insira os seguintes controles com suas respectivas propriedades:

 

Texbox

ID: txtbusca

 

Button

ID: btnBuscar

Text: Buscar

 

RequiredFieldValidator

ErrorMessage: Digite um valor para a busca

ControlToValidate: txtbusca

 

Label

ID: lblResultado

 

Datagrid

ID: dgProdutos

 

Clique sobre o Datagrid, e na guia propriedades clique no link Autoformatação.

 

Escolha um modelo qualquer dos apresentados:

 

 

Veja como ficou:

 

 

Vamos aos códigos então.

 

Clique duas vezes sobre o botão btnBuscar para entrar no modo de edição de código para o evento Click deste botão.

 

A primeira coisa a se fazer é importar os namespaces que serão utilizados. Para este tutorial precisaremos do namespace System.Data e System.Data.OleDb.

 

O namespace System.Data compreende as classes para a manipulação dos dados juntamente com a classe de conexão.

 

O ADO.Net traz consigo algumas novidades sobre as classes de acesso a dados. Para o acesso ao SQL Server 7.0 ou superior foi desenvolvido o namespace System.Data.SqlClient, e para o Oracle, o namespace System.Data.OracleClient. Como vamos acessar o banco de dados Access, precisaremos do namespace System.Data.Oledb que também serve para o SqlServer, mas não convém usa-lo, uma vez que a performance da classe SqlClient é superior para este caso.

 

Abaixo da diretiva page declare os namespaces, como mostrado abaixo:

 

 

Agora vamos detalhar os procedimentos para a execução da busca.

 

Primeiramente, vamos armazenar a string de conexão dentro de uma variável global chamada banco.

 

Public banco as string=”Provider=Microsoft.Jet.OleDb.4.0;Data Source=” & Server.MapPath(“Northwind.mdb”)

 

Obs: Procure colocar o arquivo do banco de dados dentro da mesma pasta da aplicação.

 

Agora vamos aos objetos, primeiramente com o objeto de conexão.

 

Dim conn as new OleDBConnection(banco)

 

Nesta declaração é criada uma nova instância do objeto OledbConnection, como argumento é passado o caminho do banco de dados.

 

Agora implementaremos a classe que enviará os comandos ao banco de dados.

 

Dim cmd as new OleDBCommand()

 

cmd.CommandText=”Select NomeDoProduto, PreçoUnitário from Produtos where NomeDoProduto like ‘”& txtbusca.text & “%’ “

 

cmd.Connection=conn

 

Na propriedade CommandText deve ser passado a string Sql que fará a consulta ao banco de dados. A propriedade Connection indica qual conexão será utilizada para enviar o comando.

 

O ADO.Net permite trabalhar com dois objetos para a manipulação dos dados. O DataReader e o Dataset. O DataReader permite a leitura dos dados e também a manipulação de atualização e exclusão, porém, é necessário que sempre esteja conectado ao banco de dados, ao contrário do Dataset, que permite a manipulação de dados desconectado da fonte.

 

Neste tutorial não abordaremos detalhes destes dois objetos, em breve estaremos entrando em mais detalhes sobre este assunto.

 

Vamos agora abrir o banco de dados e criar o DataReader para ler os dados.

 

Conn.Open()

 

Dim dr as OleDBDataReader

Dr=cmd.ExecuteReader()

 

Veja que o objeto DataReader armazena o método de execução do objeto Command.

 

Agora vamos tratar a execução da busca com o bloco if.

 

If dr.Read then

DgProdutos.DataSource=dr

DgProdutos.DataBind()

Else

LblResposta.Text=”Sua busca não retornou resultado!"

 

End if

 

Neste trecho definimos que se o DataReader possuir registros (dr.Read), o Datagrid dgProdutos irá recebe-lo como fonte de dados, e logo depois será renderizado no navegador através do método Databind().

 

Agora temos que organizar os eventos, visto que os códigos acima não foram designados à execução de procedimento algum. Então, o código será organizado da seguinte maneira:

 

‘Rotina para efetuar a busca

Sub EfetuarBusca()

 

Dim conn as new OleDBConnection(banco)

Dim cmd as new OleDBCommand()

cmd.CommandText="Select NomeDoProduto,PreçoUnitário from Produtos where NomeDoProduto like '"& txtbusca.text &"%'"

cmd.Connection=conn

conn.Open()

Dim dr as OleDBDataReader

dr=cmd.ExecuteReader()

if dr.Read then

dgProdutos.DataSource=dr

dgProdutos.DataBind()

Else

lblResultado.Text="Sua busca não retornou resultado!"

End if

End Sub

 

‘Chamando a função para efetuar a busca

Sub btnBUscar_Click(sender As Object, e As EventArgs)

EfetuarBusca()

End Sub

 

Veja a listagem do código completo:

 

 

Pressione F5 para testar.

 

 

Ok, funcionou e bem.

 

Ficamos por aqui. Hoje você conheceu a facilidade de acessar dados com ADO.Net e exibi-los através do WebControl Datagrid. Nos próximos tutoriais, abordaremos mais assuntos relacionados ao acesso a dados com ADO.Net.

 

Lano de Castro

“Se não se pode vencer pelo talento, vença pelo esforço”

Quer receber novidades e e-books gratuitos?

Cursos Online

  • Banco de Dados
  • Carreira
  • Criação/Web
  • Excel/Projetos
  • Formação
  • + Todas as categorias
  • Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

    Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

    Todos os direitos reservados, Júlio Battisti 2001-2020 ®

    [LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

    APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI