ADO.NET的五大对象
ADO.NET是一种数据访问技术,使得应用程序可以连接到数据库存储,并以各种方式操作存储在其中的数据。该技术基于.NETFramework,与.NET Framework类库的其余部分高度集成。
其中最重要的是它的五大对象,如下图所示
应用程序和数据库之间的连接访问过程:
下面详细介绍一下每个对象:
Connection对象:
实现数据库(数据源)的连接。通过属性可描述数据和用户身份验证,同时提供一些方法允许程序员与数据源建立连接或断开连接。
Command对象:
主要用来对数据库发出一些指令(查询、新增、修改、删除等)以及呼叫在数据库中的预存程序。
Command对象也分为四种SqlCommand、OleDbCommand、OdbcCommand、OracleCommand.
Command对象常用属性:
属性 | 说明 |
Commandtype | 获取或设置Command要执行命令的类型 |
CommandText | 获取或设置要对数据源执行的SQL语句或存储过程或表名 |
Connection | 获取或设置此Command对象使用Connection对象的名称 |
三种不同的CommandType:
CommandType.Text :
CommandType的默认值,指示执行的是SQL语句,为CommandText指定SQL字符串。
CommandType.StoredProcedure:
指示执行的是存储过程,为CommandText指定一个存储过程的名称。
CommandType.TableDirect :
指示用户将得到CommandText指定的数据表中的所有数据。
Command对象常用执行方式:
DataReader对象:
通过Command对象提供从数据库检索数据信息的功能,它以一种只读的、向前的、快速的方式访问数据库。
根据所用的.NET Framework数据提供程序的不同,DataReader对象也可以分成SqlDataReader、OleDbDataReader、OdbcDataReader、OracleDataReader等
用户通过Command对象的ExecuteReader方法从数据源中检索数据并返回一个DataReader对象。使用DataReader对象除了效率较高之外,还可以降低网络的负载(因为不把数据全部传回)
DataReader对象常用属性:
DataReader对象常用方法:
DataAdapter对象:
是DataSet和数据源之间的桥梁,一方面可以通过command对象下达命令后将取得的数据放入DataSet对象中,另一方面可以把用户对DataSet独享做出的更改写入到数据源中。
DataAdapter对象的常用属性:
DataAdapter对象通过映射Fill方法来填充DataSet对象,通过update方法来更新数据源中的数据。
DataSet对象:
DataSet对象是ADO.NET最核心成员之一,它是支持ADO.NET断开式、分布式数据方案的核心对象,是实现基于非连接的数据查询的核心组件。DataSet对象可以看做是在内存中创建的一个小型关系数据库,它将数据源中的数据复制一份放到了本地用户的内存中,供用户在不连接数据源的情况下读取数据,从而充分利用了客户端资源,大大降低了数据库服务器压力。
DataSet对象可以包含一个或多个DataTable对象,多个DataTable对象之间可能形成关系(DataRation对象)、约束(Constraint对象)、外键约束(ForeignKeyConstraint对象)等多种关系。
DataView
对象可以选择数据表中的行和列的子集。DataView对象和SQLServer的视图不同之处在于,视图可以操作多个表,而DataView对象只能操作单个表。
DataSet对象是ADO.NET最核心成员之一,它是支持ADO.NET断开式、分布式数据方案的核心对象,是实现基于非连接的数据查询的核心组件。DataSet对象可以看做是在内存中创建的一个小型关系数据库,它将数据源中的数据复制一份放到了本地用户的内存中,供用户在不连接数据源的情况下读取数据,从而充分利用了客户端资源,大大降低了数据库服务器压力。
DataSet对象可以包含一个或多个DataTable对象,多个DataTable对象之间可能形成关系(DataRation对象)、约束(Constraint对象)、外键约束(ForeignKeyConstraint对象)等多种关系。
DataView
对象可以选择数据表中的行和列的子集。DataView对象和SQLServer的视图不同之处在于,视图可以操作多个表,而DataView对象只能操作单个表。
总结:
学习是一个反复的过程,记得刚开始看红皮书的时候讲这些东西根本一点也不懂,经过这么长一段时间的学习消化,对这五个对象有了一定的了解,最重要的是把这些熟练地运用,其实学习本来就是这样,从刚开始的迷迷糊糊然后慢慢地剥开眼前的雾,逐渐地清晰理解地更深。
加油↖(^ω^)↗!
————————————————
加油↖(^ω^)↗!
————————————————
原文链接:https://blog.csdn.net/wxr15732623310/article/details/51828677