频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

ADO.NET数据库实例教程(1)

作者: 出处:51CTO.com  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2006-12-26 12:48
关 键 词:.NET  ADO  数据库
阅读提示:ADO.NET数据库编程比较复杂,名目繁多的类、对象、属性、方法让每一个编程者都感觉恼火。本文旨在介绍ASP.NET Beta2数据库编程的主要内容,帮助编程者最快的了解ADO.NET数据库编程的精髓。

一、Managed Providers

如果你是初学者,可能你会问,什么是“Managed Providers”?

Managed Providers提供简单的方法连接和访问数据库,有点类似于数据库连接,当然又比它强的多。Managed Providers提供OleDb和SQL Server两种编程接口。因为SQL Server是微软自己的产品,因此,专门提供了一个针对SQL Server的接口,使用这个接口访问SQL Server的效率应该比使用OleDb强。

NameSpaces

本文所有的例子程序都需要使用以下NameSpaces:

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Oledb" %>

Connection

为了连接数据库,必须使用OleDbConnection:

Dim objConn as New OleDBConnection
("Provider=Microsoft.Jet.OLEDB.4.0;

Data Source=e:\sff\site\db\users.mdb")

当然,你也可以将具体的连接方法作为变量使用,在连接数据库以后,必须打开数据库:

objConn.Open()

这样,就可以使用数据库了,一般在最后,我们都要求关闭数据库连接:

objConn.Close()
objConn=Nothing
Command

连接数据库以后,就可以发送命令对数据库进行操作了,OleDbCommand允许发送命令对数据库进行操作。根据发送的SQL语句,我们可以对数据库进行几乎所有操作。

Dim objCmd as New OleDbCommand("SELECT * From users", objConn)

以上语句建立Command,根据习惯不同,也可以使用以下方法:

Dim objCmd as New OleDbCommand()
objCmd.Connection = objConn
objCmd.CommandText = "SELECT * FROM users"

还可以这样:

Dim objCmd as New OleDbCommand(SQL String, connection string)

仔细观察上面的语句,我们发现在定义OleDbCommand时,可以同时使用数据库连接OleDbConnection和数据库连接语句。以上代码并没有执行SQL语句,现在我们来看到底怎样执行:

ExecuteNonQuery

当执行没有返回数据的操作的时候,我们可以使用以上方法,比如插入数据、更新数据等操作,具体这样执行:

objCmd.ExecuteNoQuery
ExecuteReader

在需要一个Data Reader的时候,我们可以使用以上方法,具体这样执行:

Dim objRd as OleDbDataReader
objRd = objCmd.ExeuteReader

ExecuteScalar

使用ExecuteScalar方法来取得一个单个地返回数据,比如对数据的统计。

Data Reader

OleDbReader是专门用来读取数据的对象,这个对象除了读数据以外,不能做其他任何数据库操作。尽管比较简单,但是在用来浏览数据的时候效率是非常高的。

Dim objReader as OleDbDataReader
objReader = objCmd.ExecuteReader
While objReader.Read
Response.Write(objReader.GetString(0) & "<br>")
End While

以上语句读取Command的返回结果的第一个字段,这个字段是字符型数据。我们可以使用其他方法取得各种类型的数据:

GetBoolean(x)
GetByte(x)
GetBytes(x)
GetChar(x)
GetChars(x)
GetDataTypeName(x) -取得数据类型
GetDateTime(x)
GetDecimal(x)
GetDefaultStream(x)
GetDouble(x)
GetFieldType(x)
GetFloat(x)
GetGuid(x)
GetInt16(x)
GetInt32(x)
GetInt64(x)
GetName(x) - 取得字段名
GetOrdinal(name) -根据字段名取得字段序号
GetString(x)
GetTimeSpan(x)
GetValue(x)
GetValues(values())

以上方法都是Command返回数据。

Data Adapter

OleDbDataAdapter取得数据并且数据与DataSet之间建一座桥梁,可以这样使用:

Dim objAdapter as New OleDbDataAdapter("SELECT * FROM users", objConn)

实现方法有点类似于OleDbCommand。OleDbAdapter可以填充DataSet,也可以修改数据然后提交以实现对具体数据的修改:

Dim ds as Dataset = New DataSet()
objAdapter.Fill(ds, "users")

以上语句实现将SQL语句取得的Users表的数据填充到DataSet。

Mappings可以实现对DataSet的列取别名:

objAdapter.TableMappings.Add("adbtable", "users")
With objAdapter.TableMappings(0).ColumnMappings
.Add("PID", "ID")
.Add("LastName", "LName")
.Add("StreetAddress", "Addy")
End With
objAdapter.Fill(ds)

当使用了以上代码以后,就可以用ds.Tables("users")来代替ds.Tables("adbtable")了。

Command Builder

在下一章我们可以看到Command Builder的具体使用和强大功能。

练习:

如果你能理解以下代码,你就可以看下一章的内容了:

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Oledb" %>
<script language="VB" runat="server">
Sub Page_Load(sender as object, e as eventargs)

Dim objConn as New OleDBConnection("Provider=Microsoft.Jet.OLEDB.4.0;

Data Source=e:\sff\site\db\users.mdb")
objConn.Open()

Dim ds as Dataset = New DataSet()
Dim objAdapter as New OleDbDataAdapter("SELECT * FROM users", objConn)
Dim objCmdBld As New OleDbCommandBuilder(objAdapter)

objAdapter.Fill(ds, "users")

End Sub
</script>


共7页: 1 [2] [3] [4] [5] [6] [7] 下一页
【内容导航】
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看52473次)
·UML类图详解 (查看46951次)
·Java编程开发手册 (查看25172次)
·UML统一建模语言 (查看24155次)
·C#技术开发指南 (查看22515次)
·Java编程开发手册 (1195个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (304个砖)
·PB开发教程 (220个砖)
·.NET开发手册 (217个砖)
·Java编程开发手册 (653个好)
·Java基础教程 (569个好)
·.NET开发手册 (251个好)
·PB开发教程 (209个好)
·Delphi开发技术手册 (174个好)
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有