转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
使用ADO.NET访问数据库         ★★★★

使用ADO.NET访问数据库

作者:闵涛 文章来源:闵涛的学习笔记 点击数:2060 更新时间:2009/4/23 10:48:15

ADO.NET 概述

ADO.NET 提供对 Microsoft SQL Server 等数据源以及通过 OLE DB XML 公开的数据源的一致访问。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、操作和更新数据。

ADO.NET 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索结果的 .NET 数据提供程序。您可以直接处理检索到的结果,或将其放入 ADO.NET DataSet 对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。ADO.NET DataSet 对象也可以独立于 .NET 数据提供程序使用,以管理应用程序本地的数据或源自 XML 的数据。

ADO.NET 结构

以前,数据处理主要依赖于基于连接的双层模型。当数据处理越来越多地使用多层结构时,程序员正在向断开方式转换,以便为他们的应用程序提供更佳的可缩放性。

ADO.NET 借用 XML 的力量来提供对数据的断开式访问。ADO.NET 的设计与 .NET 框架中 XML 类的设计是并进的——它们都是同一个结构的组件。

ADO.NET 和 .NET 框架中的 XML 类集中于 DataSet 对象。无论 DataSet 是文件还是 XML 流,它都可以使用来自 XML 源的数据来进行填充。无论 DataSet 中数据的数据源是什么,DataSet 都可以写为符合 WWW 联合会 (W3C) 的 XML,并且将其架构包含为 XML 架构定义语言 (XSD) 架构。由于 DataSet 固有的序列化格式为 XML,它是在层间移动数据的优良媒介,这使 DataSet 成为以远程方式向 XML Web services 发送数据和架构上下文以及从 XML Web services 接收数据和架构上下文的最佳选择。

设计 ADO.NET 组件的目的是为了从数据操作中分解出数据访问。完成此任务的是 ADO.NET 的两个核心组件:DataSet 和 .NET 数据提供程序,后者是一组包括 ConnectionCommandDataReaderDataAdapter 对象在内的组件。

ADO.NET DataSet 是 ADO.NET 的断开式结构的核心组件。DataSet 的设计目的很明确:为了实现独立于任何数据源的数据访问。因此,它可以用于多种不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据。DataSet 包含一个或多个 DataTable 对象的集合,这些对象由数据行和数据列以及主键、外键、约束和有关 DataTable 对象中数据的关系信息组成。

ADO.NET 结构的另一个核心元素是 .NET 数据提供程序,其组件的设计目的相当明确:为了实现数据操作和对数据的快速、只进、只读访问。Connection 对象提供与数据源的连接。Command 对象使您能够访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。DataReader 从数据源中提供高性能的数据流。最后,DataAdapter 提供连接 DataSet 对象和数据源的桥梁。DataAdapter 使用 Command 对象在数据源中执行 SQL 命令,以便将数据加载到 DataSet 中,并使对 DataSet 中数据的更改与数据源保持一致。

可以为任何数据源编写 .NET 数据提供程序。.NET 框架附带了两个 .NET 数据提供程序:SQL Server .NET 数据提供程序和 OLE DB .NET 数据提供程序。

下图阐释了 ADO.NET 结构的组件。

ADO.NET DataSet

DataSet 对象是支持 ADO.NET 的断开式、分布式数据方案的核心对象。DataSet 是数据的内存驻留表示形式,无论数据源是什么,它都会提供一致的关系编程模型。它可以用于多个不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据。DataSet 表示包括相关表、约束和表间关系在内的整个数据集。

下图将显示 DataSet 对象模型。

 

 

DataSet 中的方法和对象与关系数据库模型中的方法和对象一致。

DataSet 也可以按 XML 的形式来保持和重新加载其内容,并按 XML 架构定义语言 (XSD) 架构的形式来保持和重新加载其架构。

使用 ADO.NET 提供的通用接口,您可以编写一组在使用任何 .NET 数据提供程序时都将运行的代码。

当编写将用于多个 .NET 数据提供程序的代码时,请特别注意所使用的任何提供程序特定的语法。例如,根据您所访问的数据源,SQL 语法将有所不同。当更改为一个不同的 .NET 数据提供程序时,如果将 SQL 命令隔离为字符串常数,则将使代码更易于维护。

另外,务必要保持在代码中创建参数的顺序。对于 SQL Server .NET 数据提供程序,参数使用名称来标识,因此参数顺序并不重要。但是,OLE DB .NET 数据提供程序会按照参数添加到参数集合中的顺序来分配参数值。因此,最好始终保持参数在代码中的顺序。

    下面是C#的示例代码:

[C#]

// You can use either:

//  IDbConnection myConn = new SqlConnection();

// or:

//  IDbConnection myConn = new OleDbConnection();

 

IDbCommand myCommand = myConn.CreateCommand();

myCommand.CommandText = "SELECT * FROM Customers";

IDataReader myReader = myCommand.ExecuteReader();

[1] [2] [3]  下一页


[C语言系列]NET 中C#的switch语句的语法  [系统软件]托拽Explore中的文件到VB.net的窗口
[系统软件]Boost库在XP+Visual C++.net中的安装  [常用软件]新配色面板:Paint.Net3.0RC1官方下载
[常用软件]用内建的“Net Meeting”聊天  [VB.NET程序]Henry的VB.NET之旅(三)—共享成员
[VB.NET程序]Henry的VB.NET之旅(二)—构造与析构  [VB.NET程序]Henry的VB.NET之旅(一)—失踪的窗体
[VB.NET程序]在托盘上显示Balloon Tooltip(VB.NET)  [VB.NET程序]Henry手记-VB.NET中动态加载Treeview节点(二)
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台