欢迎来到天天文库
浏览记录
ID:12303039
大小:856.00 KB
页数:125页
时间:2018-07-16
《aspnet网站建设 adonet组件及对象模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ASP.NET数据库应用程序开发主编:陈志泊第4章ADO.NET组件及对象模型4.1ADO.NET概述4.2ADO.NET对象模型4.3数据访问途径6/26/20212ASP.NET数据库应用程序开发4.1ADO.NET概述4.1.1ADO.NET与ADO区别ADO.NET是一组.NET类,它使用通用语言运行时(CommonlanguageRuntime),具有.NET框架的所有特性。ADO.NET区别于ADO,它不是ActiveX组件的集合,而是采用了全新的数据访问方法,把数据访问的任务与数据查看和数据操纵分离开来。下面列出ADO.NET与ADO的几个主要不同点:(1)ADO使用Rec
2、ordset对象在内存中存储选择的数据集,而ADO.NET使用DataSet对象。Recordset对象可以比作是单个表,而DataSet对象像是包含一个或多个表的数据库。6/26/20213ASP.NET数据库应用程序开发(2)ADO.NET使用了脱机(disconnected)数据缓存,可同时在保持数据库连接和断开连接的条件下工作。像ADO中那样保持打开连接进行数据访问的代价是很大的,因为服务器必须持续维护每个连接。(3)XML对ADO的支持非常有限,而ADO.NET的设计中包含了被广泛接受的XML标准,几乎所有涉及数据格式化的任务都用到了XML。用户可以使用XML进行Web信息共享
3、及异构应用数据的交换,ADO.NET与XML的完全兼容使得它能够与其他兼容XML的平台进行互操作。6/26/20214ASP.NET数据库应用程序开发ADO.NET为使数据存取更为简单和效率而作出的两个最重要的改进:1.离线数据集(DisconnectedDataSet)ADO的运作是一种在线方式,这意味着不论是浏览或更新数据都必须是实时的。ADO.NET则使用离线方式,在访问数据的时候,ADO.NET会利用XML制作数据的一份副本(快照副本snapshot),ADO.NET的数据库连接也只有在这段时间需要在线。2.对XML的原生支持(XMLNativeSupport)由于ADO使用CO
4、M技术,这就要求所使用的数据类型必须符合COM规范,而ADO.NET基于XML格式,其数据类型更加丰富,并且不需要COM编排而导致的数据类型转换,从而提高了整体性能(DataSet的原生结构就是XML)。6/26/20215ASP.NET数据库应用程序开发4.1.2.NET框架中的数据提供者ADO.NET有两个核心组件:DataSet和.NET数据提供者即.NETDataProvider,包括Connection、Command、DataReader、DataAdapter4个核心对)。ADO.NET的整个体系结构如图4.1所示。6/26/20216ASP.NET数据库应用程序开发ADO
5、.NET1.0提供了两种默认数据提供者:SQLServer.NETDataProvider和OLEDB.NETDataProvider,它们随.NETFramework1.0一同发行,这两种数据提供者可访问的数据源如图4.2所示,具体说明请参照表4.1所示。图4.2ADO.NET体系结构图6/26/20217ASP.NET数据库应用程序开发数据提供者所属命名空间说明SQLServer.NETDataProviderSystem.Data.SqlClient专用于访问MircosoftSQLServer7.0或更高版本的SQLServer数据库OLEDB.NETDataProviderSy
6、stem.Data.OleDb是通用的数据库访问方法,可用于访问Access、SQLServer、dBase、Excel、Oracle等格式的数据库,但当数据源是以下情况时,建议使用该提供者:MircosoftSQLServer6.x或更早版本的中间层应用程序MicrosoftAccess数据库或者其他支持适应OLEDB接口的OLEDB数据提供者的单层应用程序表4.1.NETFramework框架的两种默认数据提供者6/26/20218ASP.NET数据库应用程序开发数据提供者.NET数据提供者命名空间说明ODBC的.NETFramework数据提供者System.Data.Odbc开放
7、式数据库连接(ODBC)的.NET数据提供者,用来建立与ODBC数据源之间的连接(通常是一些不具备OLEDB提供者的旧数据源)。Oracle的.NETFramework数据提供者System.Data.OracleClient该提供者所提供的服务与SqlClient命名空间中的类所提供的服务类似,它可以直接建立与Oracle数据库的连接。表4.2其他.NET数据提供者6/26/20219ASP.NET数据库应用程序开发虽然SQLSe
此文档下载收益归作者所有