Web Forms 資料庫連接
ASP.NET Web Forms - 資料庫連線
#ADO.NET 也是 .NET 框架的組成部分。 ADO.NET 用於處理資料存取。透過 ADO.NET,您可以操作資料庫。
嘗試- 實例
資料庫連接- 綁定到DataList 控制項
資料庫連接- 綁定到Repeater 控制項
什麼是ADO.NET?
- ADO.NET 是.NET 框架的組成部分
- 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>
<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> ;
<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 類別用於從資料來源讀取記錄流。 DataReader 是透過呼叫OleDbCommand 物件的ExecuteReader 方法來建立的:
<%@ 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>
#<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("/db/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> <!DOCTYPE html> <html> <body> <form runat="server"> <asp:Repeater id="customers" runat="server"> <HeaderTemplate> <table border="1" width="100%"> <tr bgcolor="#b0c4de"> <th>Companyname</th> <th>Contactname</th> <th>Address</th> <th>City</th> </tr> </HeaderTemplate> <ItemTemplate> <tr bgcolor="#f0f0f0"> <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( )