ASP.NET - Veritabanı bağlantısı
- Önceki Sayfa WebForms DataList
- Sonraki Sayfa WebForms Ana Sayfa
ADO.NET aynı zamanda .NET çerçevesinin bir bileşenidir.
ADO.NET'in görevi veri erişimini işlemektir. ADO.NET ile, veritabanını işlemek için çalışabilirsiniz.
Örnek
ADO.NET nedir?
- ADO.NET, .NET çerçevesinin bir bileşenidir
- ADO.NET, veri erişimini operasyonel olarak kullanmak için bir dizi sınıf içerir
- ADO.NET tamamen XML tabanlıdır
- ADO.NET, ADO'dan farklı olarak Recordset nesnesi yoktur
Veritabanı bağlantısı oluşturma
Kullanmış olduğumuz Northwind veritabanını kullanmayı planlıyoruz.
Öncelikle, "System.Data.OleDb" adlı adlandırma alanını içe aktarın. Bu adlandırma alanını, Microsoft Access ve diğer OLE DB veri sağlayıcılarını operasyonel olarak kullanabilmek için ihtiyacımız var. Page_Load alt sınıfında bu veritabanına bağlantı oluşturacağız. Bir dbconn değişkeni oluşturduk ve ona yeni bir OleDbConnection sınıfı atadık, bu OleDbConnection sınıfı, OLE DB ve veritabanı konumunu belirleyen bir bağlantı dizgisi ile birlikte gelir. Daha sonra bu veritabanı bağlantısını açıyoruz:
<%@ 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>
Açıklama:Bu bağlantı dizgisi, satır atlamaları içermeyen sürekli bir dizge olmalıdır!
Veritabanı komutu oluşturma
Veritabanından geri alınması gereken kayıtları belirlemek için bir dbcomm değişkeni oluşturacağız ve ona yeni bir OleDbCommand atayacağız. Bu OleDbCommand sınıfı, veritabanı tablolarına yönelik SQL sorguları göndermek için kullanılır:
<%@ 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 oluşturma
OleDbDataReader sınıfı, veri kaynağından kayıt akışını okumak için kullanılır. OleDbCommand nesnesinin ExecuteReader yöntemini çağırarak DataReader oluşturabilirsiniz:
<%@ 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>
Bağlanılan Repeater denetimi
Sonra, biz bu DataReader'ı bir Repeater denetimiye bağlarız:
<%@ 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>Şirket Adı</th> <th>Bağlantı Adı</th> <th>Adres</th> <th>Şehir</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>
Veritabanı Bağlantısını Kapat
Veritabanına erişim gerektiğinde, her zaman DataReader ve veritabanı bağlantısını kapatanı unutmayın:
dbread.Close() dbconn.Close()
- Önceki Sayfa WebForms DataList
- Sonraki Sayfa WebForms Ana Sayfa