Conectando um banco de dados Access

Como é de se imaginar o ADO.NET incorpora muito mais flexibilidade que o ADO e ele também permite acesso a vários bancos de dados como por exemplo: MS Access, MS Excel (tudo bem não é banco mas também podemos acessar

Por Programação Pular para comentários
Conectando um banco de dados Access Como ? de se imaginar o ADO.NET incorpora muito mais flexibilidade que o ADO e ele tamb?m permite acesso a v?rios bancos de dados como por exemplo: MS Access, MS Excel (tudo bem n?o ? banco mas tamb?m podemos acessar os dados de uma planilha), MS Sql Server, Oracle e outros mais, no nosso caso, usaremos o Access mesmo!!
Os seguintes namespaces nos permitem acessar banco de dados:

? System.Data
? System.Data.ADO
? System.Data.Oledb
? System.Data.SQL
? System.Data.SQLTypes


Para requistar dados de um banco de dados precisamos de uma conex?o com o mesmo, e um objeto que nos permite isso ? o OleDbConnection. Al?m desse objeto precisamos ainda indicar onde se encontra o banco de dados, de que tipo ele ?, e algumas coisas mais, para isso usamos uma string de conex?o que ser? passada ao objeto OleDbConnection. Depois disso usaremos o m?todo Open do Objeto que instanciaremos.
Acho que est? meio vago, voc? n?o acham? Ent?o vamos a exemplificar.
Primeiro importe os dois namespace:

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Oledb" %>


Para se conectar ao banco de dados usaremos a seguinte string de conex?o:

Dim StringConn as string="Provider=Microsoft.Jet.OLEDB.4.0; Data SOURCE=" & MapPath("./BancoDeDados") & ";"

Instanciamos o objeto objConn:

Dim objConn as New OleDBConnection(StringConn)

E por fim abriremos o banco de dados com o m?todo Open():

ObjConn.Open()


Uma vez aberta a conex?o com o banco de dados, poderemos agora requistar os dados armazenados nas tabelas dentro dele. O objeto que nos permite realizar consultas em um banco de dados ? o OleDbCommand. Vejamos:
Crie uma String de consulta Sql, por exemplo:

StrSql = "SELECT * FROM Tabela"


Onde Tabela ? o nome da tabela dentro do banco de dados.
Para realizar a consulta crie um objeto do tipo OleDBCommand, assim:

Dim objComd as New OleDBCommand(strSql, objconn)


Veja que nos passamos dois par?metros para a cria??o do objeto. O primeiro indica a o que iremos buscar no banco de dados e o segundo indica a conex?o como banco de dados, que foi mostrada acima.

Uma mudan?a que aconteceu do ADO para o ADO.NET ? que com o segundo nos temos m?todos diferentes um para inserir dados ou atualizar (ExecuteNonQuery ? n?o retorna nada!!) ou para requisitar dados (ExecuteReader? retorna dados da consulta!!).
Vamos dar uma olhada no ExecuteReader:

Dim objReader as OleDbDataReader
ObjReader = objComd.ExecuteReader


Instanciamos o objeto que receber? os dados e jogamos os dados nele atrav?s do m?todo ExecuteReader do objeto OleDBCommand.

Para mandar escrever:
While objReader.Read
Response.write(objReader.GetValue(0) & "
")
End While


O m?todo GetValue() diz para ler a primeira coluna do registro atual, o 0(zero) quer dizer a primeira coluna, a segunda ? 1, a terceira ? 2 e assim por diante.
Abaixo segue uma lista de outros m?todos do objeto OleDbDataReader.

?GetBoolean(x)
?GetByte(x) - Retorna um Byte
?GetBytes(x) - Retorna os dados como um vetor do tipo Byte.
?GetChar(x) - Retorna o caracter.
?GetChars(x) - Retorna um vetor de caracter.
?GetDataTypeName(x) - Retorna o tipo de dados da coluna especificada.
?GetDateTime(x)
?GetDecimal(x)
?GetDefaultStream(x) - Retorna um "Stream object"
?GetDouble(x)
?GetFieldType(x) - Retorna de que tipo ? o dado.que ? na coluna especificada por x. ?GetFloat(x)
?GetGuid(x) - Retorna o valor como um Identificador Global ?nico de Valor (GUID - Globally Unique Idetifier Value)
?GetInt16(x)
?GetInt32(x)
?GetInt64(x)
?GetName(x) - Retorna o nome da coluna.
?GetOrdinal(name) - Retorna o index da coluna dado o nome da coluna.
?GetString(x)
?GetTimeSpan(x)
?GetValue(x) - retorna o dado no formato nativo.
?GetValues(values()) - Retorna todos os atributos da coluna e os coloca em values().

O c?digo completo ficaria assim:
<%@ Import Namespace="System.Data.OLEDB" %>
<%@ Import Namespace="System.Data" %>




Buscando dados do banco de dados!






Algumas observa?es:
Vimos que a string de conex?o com o banco de dados ? igual ? utilizada no "Cl?ssico" ASP, a fun??o MapPath() do objeto Server tamb?m foi incorporada ao ASP+, devido a esse fato nos n?o falamos sobre esses itens pois estou supondo que voc? j? saiba. Caso voc? seja um iniciante mande-me um e-mail que eu lhe passarei algumas dicas, OK?

Bom, acho que por hoje ? s?, no nosso pr?ximo artigo nos trataremos da inser??o de dados no banco de dados, espero que voc? tenha tirado algum proveito desse artigo.

Abra?o, Eder Filardi

Compartilhe com seus amigos:
Quer conversar com o(a) Redação, comente:
Carregar comentários
Últimas notícias