/// <summary>

/// 构建测试数据表

/// </summary>

/// <returns></returns>

private DataTable GetTB()

{

//定义表结构

DataTable dt = new DataTable();

dt.Columns.Add("FactoryId");

dt.Columns.Add("FactoryName");

dt.Columns.Add("FactoryDescribe");

dt.Columns.Add("FactoryCode");

dt.Columns.Add("IsActivation");

dt.TableName = "TbFactor";

//填充数据

dt.Rows.Add("1", "河北钢铁", "集团总公司", "1000", 1);

dt.Rows.Add("2", "唐山钢铁", "集团子公司", "1001", 0);

dt.Rows.Add("3", "宣化钢铁", "集团子公司", "1002", 0);

dt.Rows.Add("4", "宝钢", "宝山钢铁集团", "2000", 1);

return dt;

}

/// <summary>

/// 表的复制(结构和数据)及行的复制示例

/// </summary>

private void TableDemo()

{

DataTable dt = GetTB();

DataTable dt2 = dt.Clone();//克隆表结构

DataTable dt3 = dt.Copy();//复制表结构和数据

if (dt.Rows.Count > 0)

{

// 示例1:复制指定的行到新表

foreach (DataRow dr in dt.Rows)

{

if (dr["FactoryId"].ToString() == "1" && dr["IsActivation"].ToString() != "1")

{

dt2.ImportRow(dr);//复制行数据到新表

}

}

//示例2: Copy from the results of a Select method

/ /select返回的是一个行数组DataRow[]

foreach (DataRow dr in dt.Select("FactoryId='1'"))

{

dt2.ImportRow(dr);//复制行数据到新表

}

//示例3:Copy from the results of a DataView.

DataView dv = dt.DefaultView;

dv.RowFilter = "FactoryCode = '1002'";

foreach (DataRowView rv in dv)

{

dt2.ImportRow(rv.Row););//复制行数据到新表

}

}

}

C# 表复制和数据行的复制说明(Clone、ImportRow 、Copy )的更多相关文章

  1. 传智播客JavaWeb day09-mysql入门、数据库操作、数据库表操作、数据行操作

    不知不觉已到了第九天了,今天主要讲了关系数据库的基本概述.安装.数据库.表和数据行的操作 1. 基本概述 1.1 数据库就是用来存储数据的.早期是存在文件里面的操作起来效率低而且不是很安全. 1.2 ...

  2. [K/3Cloud] 单据新增、复制、新增行、复制行的过程

    整单复制:先执行CopyData(获得数据包),在执行AfterCreateNewData(可处理数据包),不会执行AfterCreateNewEntryRow 单据新增:先执行AfterCreate ...

  3. SQL SERVER 查询所有数据表名称和数据行数

    SELECT a.name, b.rows FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE ( a.type ...

  4. SQL Server 复制表结构以及数据,去除表中重复字段

    --复制另一个数据库中的某张表的结构及数据--select * from Test.dbo.TestTable(查询表中所有数据) --into [表名] 插入当前数据库新表,如果没有该表就创建 se ...

  5. Cassandra1.2文档学习(3)——数据分配和复制

    参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/a ...

  6. (转载)MySQL 统计数据行数 Select Count

    (转载)http://www.5idev.com/p-php_mysql_select_count.shtml 统计数据行数 SELECT COUNT() FROM 语法用于从数据表中统计数据行数. ...

  7. SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)

    1.插入检索出的数据 select * from dbo.Customers_1

  8. 复制excel表,往excel表中写入数据

    import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import jav ...

  9. MySQL 复制表(表结构、表结构和数据)

    MySQL 中使用 命令行 复制表结构及数据的方法主要有以下几种: 1.只复制表结构 CREATE TABLE new_table SELECT * FROM old_table WHERE 1=2: ...

随机推荐

  1. Mybatis批量添加对象List

    1.对应的xml文件: <!--批量添加--><insert id="insertStandardItemInfo" parameterType="ha ...

  2. ahjesus code simith 存储过程模板

    <%------------------------------------------------------------------------------------------ * Au ...

  3. loadrunner录制webservice接口需要用户名密码时的解决方法

    当loadrunner进行webservice测试,进入访问地址,限制要输入用户名密码才能登陆时,添加以下代码: web_set_user("acerpc/admin"," ...

  4. node.js图片上传

    1.node-formidable 对文件上传提供帮助的组件 2.app.js var formidable = require('formidable'); var http = require( ...

  5. 「Unity」与iOS、Android平台的整合:2、导出的Android-Eclipse工程

    谢谢关注~由于博客园的写字有些蛋疼,已经搬迁到简书了 这是本篇文章的最新连接

  6. easyui datagrid 点击表头的事件

    在用datagrid的时候我们可能要用到点击表头来触发一个function,这里有个简单的例子. 首先你得有个能用的datagrid. <div>    <table id=&quo ...

  7. Skytte:一款令人印象深刻的 HTML5 射击游戏

    Skytte 是一款浏览器里的 2D 射击游戏.使用 Canvas 元素和大量的 JavaScript 代码实现.Skytte 是用我们的开源和现代的前端技术创造的.经典,快节奏的横向滚动射击游戏,探 ...

  8. 原生JS实现轮播+学前端的感受(防止走火入魔)

    插件!插件!天天听到有人求这个插件,那个插件的,当然,用第三方插件可以大幅提高开发效率,但作为新手,我还是喜欢自己来实现,主要是我有时间! 今天我来给大家分享下用原生JS实现图片轮播的写法 前辈们可以 ...

  9. swift学习笔记之-扩展(Extensions)

    //扩展(Extensions) import UIKit /*扩展(Extensions):扩展 就是为一个已有的类.结构体.枚举类型或者协议类型添加新功能.这包括在没有权限获取原始源代码的情况下扩 ...

  10. HtmlAgilityPack---Html解析框架

    如果你想从一段HTML中提取出指定的标记(如:获取所有的div.获取具有指定属性的元素)如果你想编辑一段HTML,修改里面的部分元素如果你想判断一段HTML中指定元素的关系(子节点.父节点.兄弟节点. ...