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: ...
随机推荐
- Linq和Lamda表达式的简单处理方式
一 什么是LINQ? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特性. ...
- 别误用IsDigit与IsNumber函数(转)
1.起因 最近发现程序中有一段控制TextBox数字输入的代码,相信大家都不会太陌生,如下: void int_KeyPress(object sender, KeyPressEventArgs e) ...
- EC笔记,第一部分:2.尽量以const,enum,inline代替#define
02.尽量以const,enum,inline代替#define 原因:编译前的预处理会替换宏,所以调试的时候找不到错误 1.const 尽量用const替代常量宏定义 两种特殊情况: (1).常量指 ...
- 修正 XE5 Android 键盘三个问题
说明:XE5 在 Android 平台上存在这一些键盘操作的问题,目前发现有下列几种: 按键盘上的隐藏键后,无法按上一页(需要修改 XE5 源码「FMX.VirtualKeyboard.Android ...
- Gitblit中采用Ticket模式进行协作开发
Git目前的代码分支管理模型中,比较主要的有Git-Flow.Github Pull Request.大家日常或多或少都在用着. 在不想安装Gitlab这种重量级的环境的情况下,如果是利用git一步步 ...
- Intellij Idea上传本地项目到Git
方法一:选择菜单VCS-Import into Version Control - Share project on Github,填写仓库名和github账户之后,点击"Share&quo ...
- 《构建高性能web站点》随笔 无处不在的性能问题
前言– 追寻大牛的足迹,无处不在的“性能”问题. 最近在读郭欣大牛的<构建高性能Web站点>,读完收益颇多.作者从HTTP.多级缓存.服务器并发策略.数据库.负载均衡.分布式文件系统多个方 ...
- PHP 单例模式继承的实现方式
/** * @author xiaojiang * 方式1 */ class father{ static $models = []; static public function getInstan ...
- Jquery实际应用,判断radio,selelct,checkbox是否选中及选中的值
jquery取radio单选按钮的值 $("input[name='items']:checked").val(); 另:判断radio是否选中并取得选中的值 如下所示: fun ...
- 6to5 – 让你即刻体验 ECMAScript 6 编程
ECMAScript 6 是下一代的 ECMAScript 标准.ECMAScript 6 的目标是让 JavaScript 可以用来编写复杂的应用程序.函数库和代码的自动生成器. ES6 是这门语言 ...