DataTable和 DataRow的 区别与联系

DataRow 和 DataColumn 对象是 DataTable 的主要组件。使用 DataRow 对象及其属性和方法检索、评估、插入、删除和更新 DataTable 中的值。DataRowCollection 表示 DataTable 中的实际 DataRow 对象,DataColumnCollection 中包含用于描述DataTable 的架构的 DataColumn 对象。使用重载的 Item 属性返回或设置 DataColumn 的值。

使用 HasVersion 和 IsNull 属性确定特定行值的状态,使用 RowState 属性确定行相对于它的父级 DataTable 的状态。

若要创建新的 DataRow,请使用 DataTable 对象的 NewRow 方法。创建新的 DataRow 之后,请使用 Add 方法将新的DataRow 添加到 DataRowCollection 中。最后,调用 DataTable 对象的 AcceptChanges 方法以确认是否已添加。

您可通过调用 DataRowCollection 的 Remove 方法或调用 DataRow 对象的 Delete 方法,从 DataRowCollection 中删除DataRow。Remove 方法将行从集合中移除。与此相反,Delete 标记要移除的 DataRow。在调用 AcceptChanges 方法时发生实际移除。通过调用 Delete,您可在实际删除行之前以编程方式检查哪些行被标记为移除。

例:表明2者关系

DataTable dt = new DataTable();
        dt.Columns.Add("num");
        dt.Columns.Add("name");
        DataRow dr = dt.NewRow();
        dr["num"] = "1";
        dr["name"] = "张三";
        dt.Rows.Add(dr);
        dr = dt.NewRow();
        dr["num"] = "2";
        dr["name"] = "李四";
        dt.Rows.Add(dr);
        dr = dt.NewRow();
        dr["num"] = "3";
        dr["name"] = "王五";
        dt.Rows.Add(dr);
        GridView1.DataSource = dt;
        GridView1.DataBind();  
时间: 2024-10-10 14:23:09

DataTable和 DataRow的 区别与联系的相关文章

datatable 与dataview的区别

datatable 与dataview的区别 一.DataTable    DataTable表示内存中数据的一个表,它完全是在内存中的一个独立存在,包含了这张表的全部信息.DataTable可以是从通过连接从数据库中读取出来形成的一个表,一旦将内容读到DataTable中,此DataTable就可以跟数据源断开而独立存在:也可以是完全由程序自己通过代码来建立的一个表.        二.DataView      DataView表示用于排序.筛选.搜索.编辑和导航的 DataTable 的可

DataSet、DataTable、DataRow、DataColumn区别及使用实例

DataSet 表示数据在内存中的缓存. 属性 Tables  获取包含在 DataSet 中的表的集合. ds.Tables["sjxx"] DataTable 表示内存中数据的一个表. 公共属性 Columns 获取属于该表的列的集合. DataSet 获取此表所属的 DataSet. DefaultView 获取可能包括筛选视图或游标位置的表的自定义视图. PrimaryKey 获取或设置充当数据表主键的列的数组. Rows 获取属于该表的行的集合. TableName 获取或设

转:DataSet、DataTable、DataRow、DataColumn区别及使用实例

DataSet 表示数据在内存中的缓存. 属性 Tables  获取包含在 DataSet 中的表的集合. ds.Tables["sjxx"] DataTable 表示内存中数据的一个表. 公共属性 Columns 获取属于该表的列的集合. DataSet 获取此表所属的 DataSet. DefaultView 获取可能包括筛选视图或游标位置的表的自定义视图. PrimaryKey 获取或设置充当数据表主键的列的数组. Rows 获取属于该表的行的集合. TableName 获取或设

DataTable.ImportRow()与DataTable.Rows.Add()的区别

今天在写一个程序是遇到DataTable中添加行添加不了的问题,代码如下: DataTable dt = dataGridView1.DataSource as DataTable; DataTable dtTemp = stfBLL.GetDataByBoxID(boxId); DataRow dr = dt.NewRow(); dr["BoxID"] = dtTemp.Rows[0]["PicID"].ToString(); dr["Item"

DataTable And DataRow

/// <summary> /// 将DataTable的字段名全部翻译为中文 /// </summary> /// <param name="table">待翻译的DataTable</param> /// <returns></returns> public DataTable TranslateDataTable(DataTable table) { DataTable dt = new DataTable(

datatable和dataset的区别

DataSet 是离线的数据源 DataTable 是数据源中的表.当然也可以自己建一张虚表.插入数据库中 DataSet是DataTable的容器DataSet可以比作一个内存中的数据库,DataTable是一个内存中的数据表,DataSet里可以存储多个DataTabledatatable是dataset中的一个表另外datarow是datatable中的一行记录

DataSet,DataTable与DataRow的复制方法

DataSet 对象是支持 ADO.NET的断开式.分布式数据方案的核心对象 ,用途非常广泛.我们很多时候需要使用其中的数据,比如取得一个DataTable的数据或者复制另一个DataTabe中的数据或者是DataRow的数据,但是只有DataSet和DataTable的复制是支持深层复制的,就是说不仅能复制元素的结构,而且能复制元素的数据,而DatatDataRow没有相关的复制的方法,下面将简单介绍下这些数据元素的复制问题.复制DataSet: DataSet object = souceD

dataset datatable datacolums datarow

DataSet 表示数据在内存中的缓存. 属性 Tables  获取包含在 DataSet 中的表的集合. ds.Tables["sjxx"] DataTable 表示内存中数据的一个表. 公共属性 Columns 获取属于该表的列的集合. DataSet 获取此表所属的 DataSet. DefaultView 获取可能包括筛选视图或游标位置的表的自定义视图. PrimaryKey 获取或设置充当数据表主键的列的数组. Rows 获取属于该表的行的集合. TableName 获取或设

DataSet、DataTable、DataRow的数据复制方法

DataSet 对象是支持 ADO.NET的断开式.分布式数据方案的核心对象 ,用途非常广泛.我们很多时候需要使用其中的数据,比如取得一个DataTable的数据或者复制另一个DataTabe中的数据或者是DataRow的数据,但是只有DataSet和DataTable的复制是支持深层复制的,就是说不仅能复制元素的结构,而且能复制元素的数据,而DatatDataRow没有相关的复制的方法,下面将简单介绍下这些数据元素的复制问题. DataTable sourceTable; DataTable