今天复习到了ADO.NET,就把他们的知识梳理总结出来
ADO.NET 是一组向 .NET 程序员公开数据访问服务的类。提供了对各种关系数据、XML 和应用程序数据的访问。
所有的数据访问类位于System.Data.dll中。System.Data包含了DataSet以及其他的支持类;System.Data.SqlClient数据提供程序专用于SQL Server数据库。
NET Framework数据提供程序提供5个核心对象(ADO.NET的五个核心对象)
1. Connection连接对象,用于与特定的数据源建立连接。连接服务器的4个参数,server=.;uid=sa;pwd=;database=northwind打开连接Open(),关闭连接Close()
2. Command执行对象,用于对数据源执行命令
两个属性对谁执行什么操作:
-
-
- CommandText:SQL语句字符串
- Connection:执行的连接对象
-
三个函数执行命令:
- ExecuteNonQuery( ),方法执行insert,update,delete语句,返回受影响的行数是int类型。
- ExecuteReader方法执行select语句,返回SqlDataReader只读数据集
- ExecuteScalar()方法执行select语句,主要是带聚合函数的查询。返回结果集中第一行第一列值,是object类型
3. DataReader对象,数据阅读器,它里面的数据是只读的,且只向前逐行读取。
-
- 函数:Read()用于从数据源中读取下一条记录,返回bool值,true为有数据;false为无数据;其中一条记录的某个列的值dr["列名"]。
4. DataAdapter对象,数据适配器,用于用数据源的数据填充 DataSet数据集并解析更新数据集
-
- Fill()方法,执行查询,填充DataSet
5. DataSet对象存放数据集,实际上是从数据源中检索到的数据在内存中的缓存。在DataSet中可以包含多个DataTable,可以简单的理解为一个临时的小型关系数据库。它是支持ADO.NET的断开式、分布式数据方案的核心对象。所以在与数据库断开连接后,DataSet中的数据不会消失。调用DataAdapter对象的Fill()方法将查询到的数据填充到DataSet。
f) DataSet结构:
- i. DataSet——DataTable——(DataColum,DataRow,DataView……)
- ii. DataSet ds由表格集合,属性为Tables,取某张表ds.Tables[0],每一张表都是一个DataTable
- iii. 每张表又由列(DataColum)、行(DataRow)、视图(DataView)等构成
- 列集合属性dt. Columns;
a) 在表格中添加列dt.Columns.Add("列名")
b) 删除列dt.Columns.Remove("列名");
c) 清空列dt.Columns.Clear();
- 行集合属性dt.Rows
a) 按dt表结构创建一个行DataRow row = dt.NewRow();
b) 添加一行记录dt.Rows.Add(row)
c) 移除一行记录dt.Rows.Remove(row)
d) 清空所有行dt.Rows.Clear()
- 获取DataSet集合ds中指定表Tables[0]指定行Rows[0]指定列.Rows[0]["UserName"]的值,语法:DataSet对象名.Tables[表名或表索引号].Rows[行号][列号或列名]