Formulários Web ASP.NET - Conexão de banco de dados
Nesta seção, explicamos Como as conexões de banco de dados são implementadas no ASP.NET. No conteúdo a seguir você entrará em contato com o ADO.NET.ADO.NET também faz parte do .NET Framework. ADO.NET é usado para lidar com o acesso a dados. Através do ADO.NET, você pode operar o banco de dados.
Exemplo
Conexão de banco de dados - vincular ao controle DataList
Conexão de banco de dados - vinculada ao controle Repetidor
ADO.NET faz parte do .NET Framework
ADO.NET consiste em uma série de classes que tratam do acesso a dados
ADO.NET é totalmente baseado em XML
ADO.NET não possui um objeto Recordset, diferentemente do ADO
Em nosso exemplo, usaremos o banco de dados Northwind.
Primeiro, importe o namespace “System.Data.OleDb”. Precisamos desse namespace para operar o Microsoft Access e outros provedores de banco de dados OLE DB. Criaremos a conexão com este banco de dados na sub-rotina Page_Load. Criamos uma variável dbconn e atribuímos a ela uma nova classe OleDbConnection com uma string de conexão indicando o provedor OLE DB e a localização do banco de dados. Em seguida, abrimos a conexão com o banco de dados:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconndbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath( "northwind.mdb"))dbconn.Open()end sub</script>
Nota: Esta cadeia de conexão deve ser uma cadeia contínua sem quebras de linha!
Para especificar os registros a serem recuperados do banco de dados, criaremos uma variável dbcomm e atribuiremos a ela uma nova classe OleDbCommand. Esta classe OleDbCommand é usada para emitir consultas SQL em tabelas de banco de dados:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcommdbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECIONE * FROM clientes"dbcomm=Novo OleDbCommand(sql,dbconn)end sub</script>
A classe OleDbDataReader é usada para ler um fluxo de registros de uma fonte de dados. O DataReader é criado chamando o método ExecuteReader do objeto OleDbCommand:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source= " & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECIONAR * FROM clientes"dbcomm=New OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()end sub</script>
Em seguida, vinculamos o DataReader ao controle Repeater:
<%@ Import Namespace="System.Data.OleDb" %><script runat="server">sub Page_Loaddim dbconn,sql,dbcomm,dbreaddbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source= " & server.mappath("northwind.mdb"))dbconn.Open()sql="SELECIONAR * FROM clientes"dbcomm=Novo OleDbCommand(sql,dbconn)dbread=dbcomm.ExecuteReader()customers.DataSource=dbreadcustomers.DataBind()dbread.Close()dbconn.Close()end sub</script><html><body> <form runat="servidor"><asp:Repetidor id="clientes" runat="server"><HeaderTemplate><table><tr><th>Nome da empresa</th><th>Nome do contato</th><th>Endereço</th><th>Cidade</th></tr </HeaderTemplate><ItemTemplate><tr><td><%#Container.DataItem("nomedaempresa")%></td><td><%#Contain er.DataItem("nomedecontato")%></td><td><%#Container.DataItem("endereço")%></td><td><%#Container.DataItem("cidade")%> </td></tr></ItemTemplate><FooterTemplate></table></FooterTemplate></asp:Repeater></form></body></html>
Caso não precise mais acessar o banco de dados, lembre-se de fechar o DataReader e a conexão com o banco de dados:
dbread.Close()dbconn.Close()