今天复习到了ADO.NET,就把他们的知识梳理总结出来
ADO.NET 是一组向 .NET 程序员公开数据访问服务的类。提供了对各种关系数据、XML 和应用程序数据的访问。
所有的数据访问类位于System.Data.dll中。System.Data包含了DataSet以及其他的支持类;System.Data.SqlClient数据提供程序专用于SQL Server数据库。
- .NET Framework数据提供程序提供5个核心对象
a) Connection连接对象,用于与特定的数据源建立连接。连接服务器的4个参数,server=.;uid=sa;pwd=;database=northwind打开连接Open(),关闭连接Close()
b) Command执行对象,用于对数据源执行命令
- i. 两个属性对谁执行什么操作:
- CommandText:SQL语句字符串
- Connection:执行的连接对象
- ii. 三个函数执行命令:
- ExecuteNonQuery( ),方法执行insert,update,delete语句,返回受影响的行数是int类型。
- ExecuteReader方法执行select语句,返回SqlDataReader只读数据集
- ExecuteScalar()方法执行select语句,主要是带聚合函数的查询。返回结果集中第一行第一列值,是object类型
- i. 两个属性对谁执行什么操作:
c) DataReader对象,数据阅读器,它里面的数据是只读的,且只向前逐行读取。
- i. 函数:Read()用于从数据源中读取下一条记录,返回bool值,true为有数据;false为无数据;其中一条记录的某个列的值dr["列名"]。
d) DataAdapter对象,数据适配器,用于用数据源的数据填充 DataSet数据集并解析更新数据集
- i. Fill()方法,执行查询,填充DataSet
e) 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[行号][列号或列名]
-
DataGridView控件显示数据:
- i. 属性:
- DataSource指定数据源一般为DataSet的DataTable表
- Columns列集合
- BorderStyle:边框样式
- BackGroudColor:背景颜色
- Dock:依靠位置
- GridColor:单元格网线颜色
- MultiSelect:是否多选
- ReadOnly:只读
- SelectionMode:如何选中单格,如整行都选是FullRowSelect
- ii. 方法:
- ClearSelection():清除当前选择
- iii. 事件:SelectionChanged:选中项发生变化时
- ComBoBox控件显示数据:
a) DataSource属性,指定数据源
b) DisplayMember属性,指定下拉框中每一项的显示值
c) ValueMember属性,指定下拉框中每一项的实际值