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: ...
随机推荐
- 在Win Server 2012中安装.NET Framework 3.5的问题
在Windows Server 2012 上安装 SQL Server 2012 时,提示 启用 Windows 功能 NetFx3 时出错,错误代码:-2146498298.请尝试从 Windows ...
- C++: read access data using ADOX.DLL and System::Data::OleDb
#pragma once #include "Form2.h" namespace cdemo { using namespace System; using namespace ...
- Java并发编程:synchronized
Java并发编程:synchronized 虽然多线程编程极大地提高了效率,但是也会带来一定的隐患.比如说两个线程同时往一个数据库表中插入不重复的数据,就可能会导致数据库中插入了相同的数据.今天我们就 ...
- Ext.grid.Panel表格分页存储过程
/*首先需要引入两个Extjs插件类 Ext.ux.data.PagingMemoryProxy和Ext.ux.ProgressBarPager这两个类*/ /*下面是控制弹出窗体放大缩小时窗体居中的 ...
- linux Centos 6.5 安装桌面环境GNOME
在某种场合之下,我们使用的Linux还是要选择安装桌面环境的,所以在这里介绍一下如何给没有安装桌面环境的系统安装桌面环境.以Centos 6.5 为例演示一下如何安装桌面环境. 工具/原料 Linux ...
- Java经典实例:把字符串解析为日期时间
Java版本:1.8开始 import java.time.LocalDate; import java.time.LocalDateTime; /** * Created by Frank */ p ...
- IO碰到的问题
1.流关了,并不代表流对象为空 可是java并没提供查看流是否关闭的方法 不过如果流已经关闭了以后,再对流进行操作的话,会抛出IOException:Stream closed异常 可以根据这个异常来 ...
- 使用 SVG 动画实现弹性的页面元素效果
Codrops 分享了一些给SVG元素加上弹性动画的灵感.实现的思路是把一个SVG元素整合成一个组件,然后从一个路径弹性动画到另一个.这种效果可以应用到像菜单,按钮或其它元素,使得交互更有趣,看起更原 ...
- Framer – 将视觉搞转换为更真实的动态原型
Framer 是一个 JavaScript 框架,简化了创建现实原型,实现完整的3D效果.以一种简单,可读的和强大的方式定义交互和创建动画. 另外还有 Framer Generator 是一个桌面应 ...
- Shepherd – 在应用程序中轻松实现引导功能
Shepherd 是一个指导用户使用应用程序的 JavaScript 库.它使用 Tether——另一个开源库,实现所有的步骤.Tether 确保你的步骤不会溢出屏幕或被剪裁.你可以很容易地指导用户使 ...