C# 表复制和数据行的复制说明(Clone、ImportRow 、Copy )
/// <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 )的更多相关文章
- 传智播客JavaWeb day09-mysql入门、数据库操作、数据库表操作、数据行操作
不知不觉已到了第九天了,今天主要讲了关系数据库的基本概述.安装.数据库.表和数据行的操作 1. 基本概述 1.1 数据库就是用来存储数据的.早期是存在文件里面的操作起来效率低而且不是很安全. 1.2 ...
- [K/3Cloud] 单据新增、复制、新增行、复制行的过程
整单复制:先执行CopyData(获得数据包),在执行AfterCreateNewData(可处理数据包),不会执行AfterCreateNewEntryRow 单据新增:先执行AfterCreate ...
- SQL SERVER 查询所有数据表名称和数据行数
SELECT a.name, b.rows FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE ( a.type ...
- SQL Server 复制表结构以及数据,去除表中重复字段
--复制另一个数据库中的某张表的结构及数据--select * from Test.dbo.TestTable(查询表中所有数据) --into [表名] 插入当前数据库新表,如果没有该表就创建 se ...
- Cassandra1.2文档学习(3)——数据分配和复制
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/a ...
- (转载)MySQL 统计数据行数 Select Count
(转载)http://www.5idev.com/p-php_mysql_select_count.shtml 统计数据行数 SELECT COUNT() FROM 语法用于从数据表中统计数据行数. ...
- SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)
1.插入检索出的数据 select * from dbo.Customers_1
- 复制excel表,往excel表中写入数据
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import jav ...
- MySQL 复制表(表结构、表结构和数据)
MySQL 中使用 命令行 复制表结构及数据的方法主要有以下几种: 1.只复制表结构 CREATE TABLE new_table SELECT * FROM old_table WHERE 1=2: ...
随机推荐
- Mybatis批量添加对象List
1.对应的xml文件: <!--批量添加--><insert id="insertStandardItemInfo" parameterType="ha ...
- ahjesus code simith 存储过程模板
<%------------------------------------------------------------------------------------------ * Au ...
- loadrunner录制webservice接口需要用户名密码时的解决方法
当loadrunner进行webservice测试,进入访问地址,限制要输入用户名密码才能登陆时,添加以下代码: web_set_user("acerpc/admin"," ...
- node.js图片上传
1.node-formidable 对文件上传提供帮助的组件 2.app.js var formidable = require('formidable'); var http = require( ...
- 「Unity」与iOS、Android平台的整合:2、导出的Android-Eclipse工程
谢谢关注~由于博客园的写字有些蛋疼,已经搬迁到简书了 这是本篇文章的最新连接
- easyui datagrid 点击表头的事件
在用datagrid的时候我们可能要用到点击表头来触发一个function,这里有个简单的例子. 首先你得有个能用的datagrid. <div> <table id=&quo ...
- Skytte:一款令人印象深刻的 HTML5 射击游戏
Skytte 是一款浏览器里的 2D 射击游戏.使用 Canvas 元素和大量的 JavaScript 代码实现.Skytte 是用我们的开源和现代的前端技术创造的.经典,快节奏的横向滚动射击游戏,探 ...
- 原生JS实现轮播+学前端的感受(防止走火入魔)
插件!插件!天天听到有人求这个插件,那个插件的,当然,用第三方插件可以大幅提高开发效率,但作为新手,我还是喜欢自己来实现,主要是我有时间! 今天我来给大家分享下用原生JS实现图片轮播的写法 前辈们可以 ...
- swift学习笔记之-扩展(Extensions)
//扩展(Extensions) import UIKit /*扩展(Extensions):扩展 就是为一个已有的类.结构体.枚举类型或者协议类型添加新功能.这包括在没有权限获取原始源代码的情况下扩 ...
- HtmlAgilityPack---Html解析框架
如果你想从一段HTML中提取出指定的标记(如:获取所有的div.获取具有指定属性的元素)如果你想编辑一段HTML,修改里面的部分元素如果你想判断一段HTML中指定元素的关系(子节点.父节点.兄弟节点. ...