ASP.NET - Pagkakabit sa Database
- หน้าก่อนหน้า WebForms DataList
- หน้าต่อไป Master Page WebForms
ADO.NET ay bahagi din ng .NET framework.
Ang tungkulin ng ADO.NET ay ang pagpapaandar ng pagdadaan ng data. Sa pamamagitan ng ADO.NET, puwede na ninyong gamitin ang database.
Mga Halimbawa
Ano ang ADO.NET?
- ADO.NET ay bahagi ng .NET framework
- Ang ADO.NET ay binubuo ng isang serye ng mga klase na ginagamit para sa paggamit ng pagdala ng datos
- Ang ADO.NET ay ganap na naka batay sa XML
- Wala ang Recordset object sa ADO.NET, kung saan ay iba sa ADO
Lumikha ng koneksyon ng database
Inaasahan namin na gamitin ang dati na Northwind database.
Una, i-import ang namespace "System.Data.OleDb". Kailangan namin ito upang mapalit ang Microsoft Access at iba pang mga tagapagbigay ng OLE DB database. Lumikha kami ng koneksyon sa database sa sub-procedure ng Page_Load. Lumikha kami ng variable na dbconn at i-assign sa variable na ito ang bagong klase OleDbConnection na may string ng koneksyon na maaaring nagsasabi sa OLE DB at ang posisyon ng database. Pagkatapos, buksan namin ang koneksyon ng database na ito:
<%@ 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>
Komento:Ang string ng koneksyon na ito ay dapat maging isang patuloy na string na walang pagbubulag!
Lumikha ng komando ng database
Upang tiyakin na kumuha mula sa database ang mga record na kinakailangan, lumikha at i-assign ng bagong OleDbCommand sa variable ng dbcomm. Ang klase OleDbCommand ay ginagamit upang ipaalam ang SQL query sa database table:
<%@ 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>
Lumikha ng DataReader
Ang klase OleDbDataReader ay ginagamit upang mabasa ang stream ng record mula sa pinagmulan ng datos. Sa pamamagitan ng pagtawag sa ExecuteReader method ng OleDbCommand object, maaaring lumikha ng 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>
Binindtan sa Repeater kontrol
Pangalawang, binindtan ang DataReader sa isang Repeater kontrol:
<%@ 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>
ปิดการเชื่อมต่อฐานข้อมูล
หลังจากไม่ต้องการเข้าถึงฐานข้อมูล โปรดจำได้ที่จะปิด DataReader และการเชื่อมต่อฐานข้อมูลเสมอ
dbread.Close() dbconn.Close()
- หน้าก่อนหน้า WebForms DataList
- หน้าต่อไป Master Page WebForms