C#中 DataSet 的用法
DataSet 类 是 内 存 中 数 据 的 复 杂 容 器 。 DataSet 类 包 含 了 DataTable 实 例 的 集 合 ,
DataTable 实例包含了保存在数据集中的关系数据。每个 DataTable 实例包含 DataColumn 实
例的集合用来定义表中的数据的架构,还包含 DataRow 实例的集合用来以数据行方式访问
其中包含的数据。
数据集还允许使用乐观并发处理方法更新数据库,为了支持这种功能,数据表对象中
的每个数据行会跟踪一个 RowState 标志,来标识数据行的状态是未修改、已修改、新增或
已删除。数据表还维护着每个已修改数据行的一个附加拷贝,这样就可以同时保留从数据
库中取出的原值和当前值。使用这些数据就可以检测到,在数据集被提交修改的这段时间
其他人是否已经修改可数据库中的值。
使用 DataSet 对象更新数据库,我们可以使用数据适配器的 Update 方法。Update 方法
的功能与适配器的 Fill 方法类似。唯一不同 的是 Update 方法会查找数据集中的每个数据表
的每个数据行,当它发现某个数据行状态为已修改、新增或已删除的时候,它就会为每个
这样的数据行执行一个单独的命令。数据适配器使用 UpdateCommand、InsertCommand 和
DeleteCommand 等属性引用的 SqlCommand 对象来执行这些命令。
DataSet 类型还支持在内部包含的数据表上定义约束,包括主键约束、唯一约束和外键
约束等。DataView 可以用来排序或过滤包含在数据表的数据,而不用修改数据表的实际内
容,这与数据库中的数据表上定义的视图概念是非常类似的。
C#DataSet 和 DataTable 详解之一(转载)
DataSet 和 DataTable
1、创建 DataSet 对象:DataSet ds = new DataSet("DataSetName");
2、查看调用 SqlDataAdapter.Fill 创建的结构
da.Fill(ds,"Orders");
DataTable tbl = ds.Table[0];
foreach(DataColumn col in tbl.Columns)
Console.WriteLine(col.ColumnName);
3、查看 SqlDataAdapter 返回的数据
①、DataRow 对象
DataTable tbl = ds.Table[0];
DataRow row = tbl.Row[0];
Console.WriteLine(ros["OrderID"]);
②、检查存储在 DataRow 中的数据
DataTable tbl = row.Table;
foreach(DataColumn col in tbl.Columns)
Console.WriteLine(row[col]);
③、检查 DatTable 中的 DataRow 对象
foreach(DataRow row in tbl.Rows)
DisplayRow(row);
4、校验 DataSet 中的数据
①、校验 DataColumn 的属性:ReadOnly,AllowDBNull,MaxLength,Unique
评论13