巩固基础知识,一步步写自己的SqlHelper类。
这一章节先来聊聊ADO.NET简介,MSDN对这方面的介绍已经很详细了,我主要是结合它加上自己的理解,进行总结。
1.ADO.NET定义
引言:在当今数据信息丰富的时代,计算机领域中使用数据库来存储信息和访问信息,但是本身数据库种类有很多,例如SQL Server,Oracle,Access,MySql等,因此,如何能更加高效、更加方便地使用一种统一的数据访问编程模型来对不同的数据库的数据进行操作,此时,强大MS就为广大的开发者提供了基于.NET平台的数据访问编程模型ADO.NET。
MSDN定义:ADO.NET 是一组向 .NET Framework 程序员公开数据访问服务的类。ADO.NET 类位于 System.Data.dll 中,并与 System.Xml.dll 中的 XML 类集成。ADO.NET 提供对诸如 SQL Server 和 XML 这样的数据源以及通过 OLE DB 和 ODBC 公开的数据源的一致访问。共享数据的使用方应用程序可以使用 ADO.NET 连接到这些数据源,并可以检索、处理和更新其中包含的数据。上述定义写得很全面了。
个人理解,ADO.NET其实就是一个可对不同数据库中的数据进行增,删,改,查操作的类库。
2.连接环境与非连接环境下使用ADO.NET
ADO.NET对于客户端与数据库的允许环境,分为连接环境与非连接环境。
(1)连接环境是指用户在这种环境下始终保持与数据源的连接。
优点:1.数据实时性优于其他环境。 2.同步问题易于控制。
缺点:1.必须保持持续的连接,占用连接资源。2.扩展性差。
操作流程:
在连接环境中使用的核心类有:XxxConnection,XxxCommand,XxxDataReader,XxxDataAdapter,其中Xxx指得是不同的数据提供程序类名的前缀,例如,Sql,Oledb等。
(2)非连接环境是指用户在初次连接中可以将检索到的数据独立地放在一个容器中,当使该独立数据改变时,再重新连接到数据源,从而进行数据的合并。
优点:1.不占用连接资源。2.扩展性高。
缺点:1.数据不是实时性。2.必须解决数据的并发性和同步性问题。
操作流程:
在非连接环境下,使用Dataset类对数据进行填充。
(3)图解:
3.ADO.NET对象模型
4.ADO.NET结构
ADO.NET 结构的一个核心元素是 .NET 数据提供程序(Data Provider)。具体包括:
(1)Connection 对象提供与数据源的连接。
(2)CommandCommand 对象可以访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。
(3)DataReader 对象从数据源中提供快速的,只读的数据流。
(4)DataAdapter 对象提供连接 DataSet 对象和数据源的桥梁,DataAdapter 使用 Command 对象在数据源中执行 SQL 命令以向 DataSet 中加载数据,并将对 DataSet 中数据的更改协调回数据源。
DataSet 是 ADO.NET 的非连接(断开)结构的核心组件:
ADO.NET DataSet 是专门为独立于任何数据源的数据访问而设计的。 因此,它可以用于多种不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据。 DataSet 包含一个或多个 DataTable 对象的集合,这些对象由数据行和数据列以及有关 DataTable 对象中数据的主键、外键、约束和关系信息组成。