ASP.NET - Σύνδεση με βάση δεδομένων

Το ADO.NET είναι επίσης μέρος του .NET Framework.

Η λειτουργία του ADO.NET είναι η διαχείριση της πρόσβασης στα δεδομένα. Με το ADO.NET, μπορείτε να δουλέψετε με βάσεις δεδομένων.

Τι είναι το ADO.NET;

  • Το ADO.NET είναι μέρος του .NET Framework
  • Το ADO.NET αποτελείται από μια σειρά κλάσεων που χρησιμοποιούνται για την αλληλεπίδραση με την πρόσβαση δεδομένων
  • Το ADO.NET είναι πλήρως βασισμένο στο XML
  • Το ADO.NET δεν έχει αντικείμενο Recordset, σε αντίθεση με το ADO

Δημιουργία σύνδεσης βάσης δεδομένων

Προτίθενται να χρησιμοποιήσουμε τη βάση δεδομένων Northwind που έχουμε χρησιμοποιήσει προηγουμένως.

Πρώτα, εισάγουμε το όνομα χώρο "System.Data.OleDb". Χρειαζόμαστε αυτό το όνομα χώρο για να μπορούμε να χειριστούμε το Microsoft Access και άλλους παροχείς OLE DB βάσεων δεδομένων. Θα δημιουργήσουμε μια σύνδεση σε αυτή τη βάση δεδομένων στο υποσύνολο Page_Load. Δημιουργούμε μια μεταβλητή dbconn και της δίνουμε τιμή μια νέα κλάση OleDbConnection, η οποία έχει μια συνάρτηση συνδέσμου που μπορεί να δείξει το OLE DB και τη θέση της βάσης δεδομένων. Στη συνέχεια, ανοίγουμε αυτή τη σύνδεση στη βάση δεδομένων:

<%@ 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>

Σημείωση:Αυτή η συνάρτηση συνδέσμου πρέπει να είναι μια συνεχής αλυσίδα χωρίς βρόχια!

Δημιουργία εντολής βάσης δεδομένων

Για να καθορίσουμε τα αρχεία που θα επιστρέψουν από τη βάση δεδομένων, θα δημιουργήσουμε μια μεταβλητή dbcomm και θα της δώσουμε τιμή ένα νέο OleDbCommand. Η κλάση OleDbCommand χρησιμοποιείται για να εκτελεί SQL ερωτήματα στην βάση δεδομένων του πίνακα:

<%@ 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>

Δημιουργία DataReader

Η κλάση OleDbDataReader χρησιμοποιείται για την ανάγνωση ροής καταγραφών από την πηγή δεδομένων. Με την κλήση του μεθόδου ExecuteReader του αντικειμένου OleDbCommand, μπορεί να δημιουργηθεί ένα DataReader:

<%@ 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>

σύνδεση σε έλεγχο Repeater

τότε, θα συνδέσουμε αυτό το DataReader σε ένα έλεγχο Repeater:

<%@ 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Όνομα Εταιρείας</th>
<thΌνομα Επικοινωνίας</th>
<th>Διεύθυνση</th>
<th>Πόλη</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>

Εμφάνιση Αυτού του Παραδείγματος

Κλείσιμο Σύνδεσης Βάσης Δεδομένων

Μετά την πρόσβαση στη βάση δεδομένων, θυμήσου να κλείσεις πάντα τον DataReader και τη σύνδεση της βάσης δεδομένων:

dbread.Close()
dbconn.Close()