Najnowsze tutoriale tworzenie stron internetowych
 

ASP.NET Web Forms - Połączenie z bazą danych


ADO.NET jest również częścią platformy .NET Framework. ADO.NET jest używany do obsługi dostępu do danych. Z ADO.NET można pracować z bazami danych.


Przykłady

Przykłady

Połączenia z bazą danych - Bind do kontroli DataList

Połączenia z bazą danych - Bind do kontroli Repeater


Co to jest ADO.NET?

  • ADO.NET jest częścią .NET Framework
  • ADO.NET składa się z zestawu klas używanych do obsługi dostępu do danych
  • ADO.NET jest w całości oparty na XML
  • ADO.NET ma, w przeciwieństwie do ADO, nie obiekt Recordset

Tworzenie połączenia z bazą danych

Mamy zamiar korzystać z bazy danych Northwind w naszych przykładach.

Po pierwsze, import "System.Data.OleDb" nazw. Musimy ten obszar nazw do pracy z Microsoft Access i innych dostawców baz danych OLE DB. Będziemy tworzyć połączenia z bazą danych w podprogramie Page_Load. Tworzymy dbconn zmienną jako nowej klasy OleDbConnection z ciągu połączenia, który identyfikuje dostawcę OLE DB oraz lokalizację bazy danych. Następnie otwieramy połączenie z bazą danych:

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

<script runat="server">
sub Page_Load
dim dbconn
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb"))
dbconn.Open()
end sub
</script>

Note: Ciąg połączenia musi być ciągły ciąg bez przerwy linii!


Utworzyć polecenie Database

Aby określić rekordy mają być pobierane z bazy danych, będziemy tworzyć zmienną dbcomm jako nowej klasy OleDbCommand. Klasa OleDbCommand jest do wydawania zapytań SQL na tabele bazy danych:

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

<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb"))
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
end sub
</script>

Tworzenie DataReader

Klasa OleDbDataReader służy do odczytu strumienia rekordów ze źródła danych. DataReader jest tworzony poprzez wywołanie metody ExecuteReader obiektu OleDbCommand:

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

<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm,dbread
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb"))
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
dbread=dbcomm.ExecuteReader()
end sub
</script>

Wiążą się z Kontroli Repeater

Potem wiążą DataReader do kontrolki Repeater:

Przykład

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

<script runat="server">
sub Page_Load
dim dbconn,sql,dbcomm,dbread
dbconn=New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;
data source=" & server.mappath("northwind.mdb"))
dbconn.Open()
sql="SELECT * FROM customers"
dbcomm=New OleDbCommand(sql,dbconn)
dbread=dbcomm.ExecuteReader()
customers.DataSource=dbread
customers.DataBind()
dbread.Close()
dbconn.Close()
end sub
</script>

<html>
<body>

<form runat="server">
<asp:Repeater id="customers" runat="server">

<HeaderTemplate>
<table border="1" width="100%">
<tr>
<th>Companyname</th>
<th>Contactname</th>
<th>Address</th>
<th>City</th>
</tr>
</HeaderTemplate>

<ItemTemplate>
<tr>
<td><%#Container.DataItem("companyname")%></td>
<td><%#Container.DataItem("contactname")%></td>
<td><%#Container.DataItem("address")%></td>
<td><%#Container.DataItem("city")%></td>
</tr>
</ItemTemplate>

<FooterTemplate>
</table>
</FooterTemplate>

</asp:Repeater>
</form>

</body>
</html>
Pokaż przykład »

Zamknąć połączenie z bazą danych

Zawsze blisko zarówno DataReader i baza połączenie po dostępu do bazy danych nie jest wymagane:

dbread.Close()
dbconn.Close()