datatable 用法
DataTable datainsert = dt.GetChanges(DataRowState.Added);
DataTable datadelete = dt.GetChanges(DataRowState.Deleted);
DataTable dataupdate = dt.GetChanges(DataRowState.Modified);
DataTable datadelete_origin = dt.Clone();
datatable的GetChange可以捕捉在DataGridView表格中的增添行,删除行和改变行等一系列操作,并且记录下来,便于与数据库之间的交互,其中删除行需要注意,删除行默认的是现在的状态,即空白,什么都没有,所以用Clone()得到一个保留结构框架的空白 表格去存储删除的数据,找回原有数据如下所示:
for (int i = ; i < datadelete.Rows.Count; i++)
{
datadelete_origin.Rows.Add();
datadelete_origin.Rows[i][] = datadelete.Rows[i][, DataRowVersion.Original];
datadelete_origin.Rows[i][] = datadelete.Rows[i][, DataRowVersion.Original];
datadelete_origin.Rows[i][] = datadelete.Rows[i][, DataRowVersion.Original];
datadelete_origin.Rows[i][] = datadelete.Rows[i][, DataRowVersion.Original];
}
这里的DataRowVersion.Original找回的就是之前被删除的数据。
datatable 用法的更多相关文章
- DataTable用法
在项目中经常用到DataTable,如果DataTable使用得当,不仅能使程序简洁实用,而且能够提高性能,达到事半功倍的效果,现对DataTable的使用技巧进行一下总结. 一.DataTable简 ...
- JQuery Datatable用法
原文出处:http://sgyyz.blog.51cto.com/5069360/1408251 目标: 使用jQuery Datatable构造数据列表,并且增加或者隐藏相应的列,已达到数据显示要求 ...
- C# DataTable 用法
1.创建DataTable DataTable dataTable = new DataTable(); //创建一个空表 2.创建DataRow DataRow row = dataTable.Ne ...
- Net编程 详解DataTable用法【转】
http://www.diybloghome.com/article/16.html DataTable表示一个与内存有关的数据表,可以使用工具栏里面的控件拖放来创建和使用,也可以在编写程序过程中根据 ...
- 2016.2.28 DataTable用法汇总
将控件的DataSource转换为DataTable,但是,此控件的DataSource绑定时必须是DataTable,不能是List DataTable dt = (bgvRoutePortion. ...
- C#中DataTable用法
一.select方法1.筛选出男性且名字中带有李的人然后按照生日降序排列(1)DataRow[] rows=DataTable.Select("sex='"+"男&quo ...
- C#基础课程之六(临时表)DataTable使用方法
DataTable 用法:赋取值操作,及报错情况 dataTable.Columns.Add("Name"); //Columns 对象获取该集合的全部列,添加列名. 默认stri ...
- DataTable.Compute()用法
DataTable.Compute()用法 2010-04-07 11:28 一.DataTable.Compute()方法說明如下 作用: 计算用来传递筛选条件的当前行上的给定表达 ...
- 转:DataTable.Compute()用法
转自:http://www.cnblogs.com/fanyf/archive/2012/05/11/2495919.html一.DataTable.Compute()方法說明如下 作用: 计算用来传 ...
随机推荐
- 建立一个能持续处理的C/S网络程序
程序流程图: 代码演示: 服务器端: #include<WinSock2.h> #include<Windows.h> #include<stdio.h> #inc ...
- 第三方库-正则re
Python正则表达式里的单行re.S和多行re.M模式 Python 的re模块内置函数几乎都有一个flags参数,以位运算的方式将多个标志位相加.其中有两个模式:单行(re.DOTALL, 或者r ...
- [APIO2010] 算法竞赛竞赛经典 巡逻
原题链接 题目描述 在一个地区有 n 个村庄,编号为1,2,-,n. 有 n-1 条道路连接着这些村庄,每条道路刚好连接两个村庄,从任何一个村庄,都可以通过这些道路到达其他任一个村庄. 每条道路的长度 ...
- Selenium(2)
testing123456peter123456rose123456 一.常见的运行错误: 1.[error] Timed out after 30000ms Timed out:超时 after:之 ...
- 【PKUSC2018】最大前缀和
上午的国庆大阅兵有意思 Description https://loj.ac/problem/6433 Solution 看数据范围认解法 首先在每种情况出现概率相同的情况下, \(期望 \times ...
- POJ - 1185 炮兵阵地 (插头dp)
题目链接 明明是道状压dp的题我为啥非要用插头dp乱搞啊 逐行枚举,设dp[i][S]为枚举到第i个格子时,状态为S的情况.S为当前行上的“插头”状态,每两个二进制位表示一个格子,设当前格子为(x,y ...
- 【模板】多标记 LCT
代码如下 #include <bits/stdc++.h> using namespace std; typedef long long LL; const int mod = 51061 ...
- 关于JavaScript的事件绑定
js事件绑定的几种方式 JavaScript中有三种常用的绑定事件方法: 1. 在DOM元素中直接绑定: 2. 在JavaScript代码中绑定: 3. 绑定事件佳妮婷函数. 一.在DOM元素中直接绑 ...
- Flyway的简单介绍和使用(转)
Flyway的简单介绍及使用 一.开发时管理数据库遇到的问题: 现在开发一般都是团队开发,这样就会出现项目同步的问题,代码同步可以通过SVN工具管理起来,那数据库同步怎么办呢?理想的情况下,在开发新项 ...
- RedisTemplate的各种操作(set、hash、list、string)
RedisTemplate的各种操作(set.hash.list.string) 注入以下RedisTemplate @Autowired private RedisTemplate<Strin ...