ASP.NET入门教程:数据库连接

2013 年 10 月 9 日3570

ADO.NET 同样是 .NET 框架的组成部分。ADO.NET 的职能是处理数据访问。通过 ADO.NET,您就可以操作数据库了。

实例

数据库连接 - 绑定到 Repeater 控件
数据库连接 - 绑定到 DataList 控件

什么是 ADO.NET?

创建数据库连接

我们计划使用曾经使用过的 Northwind 数据库。

首先,导入命名空间 "System.Data.OleDb"。我们需要该命名空间,以便可以操作 Microsoft Access 以及其他的 OLE DB 数据库提供者。我们将在 Page_Load 子例程中创建对此数据库的连接。我们创建了一个 dbconn 变量,并把新的 OleDbConnection 类赋值给这个变量,这个 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 类用于从数据源中读取记录流。通过调用 OleDbCommand 对象的 ExecuteReader 方法,就可以创建 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 控件:看到本信息说明该文是通过网页教学(webjx.com)整理发布的,请不要删掉!

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

0 0