当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET入门教程:数据库连接

ASP.NET
动态加载Js代码到Head标签中的脚本
asp.net Parameters.AddWithValue方法在SQL语句的 Where 字句中的用法
ASP.NET 运行时错误: 没有为扩展名“.asax”注册的生成提供程序修正版
Convert.ToInt32与Int32.Parse区别及Int32.TryParse
WebService出现"因 URL 意外地以 结束,请求格式无法识别"的解决方法
asp.net(C#) Xml操作(增删改查)练习
asp.net 分页sql语句(结合aspnetpager)
asp.net开发与web标准的冲突问题的一些常见解决方法
asp.net Repeater中使用if的代码
Asp.net FCKEditor 2.6.3 上传文件没有权限解决方法
C# 命名规则(挺不错的)
asp.net 动态生成控件并获取其值
使用DataGrid中扩展ItemRenderer和HeaderRenderer进行操作
asp.net Hashtable 遍历写法
asp.net GridView和DataList实现鼠标移到行行变色
C# 邮件地址是否合法的验证
.net发送邮件实现代码
ASP.Net 上传图片并生成高清晰缩略图
asp.net 事件与委托分析
C# 无限级分类的实现

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 127 ::
收藏到网摘: n/a

前面讲了DataList控件下面我们开始讲如何与数据库进行链接。

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

实例

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

什么是 ADO.NET?

  • ADO.NET 是 .NET 框架的组成部分
  • ADO.NET 由一系列用于操作数据访问的类组成
  • ADO.NET 完全基于 XML
  • ADO.NET 没有 Recordset 对象,这一点与 ADO 不同

创建数据库连接

我们计划使用曾经使用过的 Northwind 数据库。看到本信息,说明该文章来源于软晨学习网www.ruanchen.com,如果文章不完整请到软晨学习网ruanchen.com浏览!

首先,导入命名空间 "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>

注释:这个连接字符串必须是没有折行的连续字符串!本信息代表文章来源网页教学ruanchen.com请大家去www.ruanchen.com浏览!

创建数据库命令

为了指定需从数据库取回的记录,我们将创建一个 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 控件:看到本信息说明该文是通过网页教学(ruanchen.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()