关于C# DataTable 的一些操作
经常操作DATATABLE 对于一些不需要再通过sql 来重复操作的 可以通过操作datatable来达到同样的效果
方法一:
也是广为人知的一种:
YourDataTable.Columns.Remove("列名");
但是这种情况只适合于去掉很少列的情况。
如果有很多列我却只要一两列呢,那就得用方法二了。
方法二:
DataTable dat = YourDataTable.DefaultView.ToTable(false, new string[] { "你要的列名", "你要的列名" });
补加dataTable操作相关内容:
对DataTable 的一些操作
在dataTable中最容易想到的是用for循环来操作,但事实不到万不得已是不会用form循环的,因为效率一般不高。
1) 取行
取行一般用rowfilter
DataTable datSource;//数据源表
//过滤表
DataView davTemp = new DataView(datSource, "过滤条件", "排序字段", DataViewRowState.各种 状态);
//把过滤后的表赋给新表
DataTable datNew = davTemp.ToTable();
2)取表的某列或多列
DataTable datSource;//数据源表
DataTable datNew= datSource.DefaultView.ToTable(false, new string[] { "列名", "列名" .....});
3)复制某行的值[前提是表结构或列数相同]
DataTable datSource;
DataTable datNew;
datSource.Rows[i].ItemArray= datNew. Rows[i].ItemArray;
4)表列数相同,但是却列名不同,想复制值怎么办?
换个思维方式,既然列数相同,只是列名不同,为什么不改变列名呢?
如下:
DataTable datSource;
DataTable datNew;
datNew= datSource.Copy();
datNew.Columns["FirstColumn"].ColumnName = "YourColumnName";
5)调整列的位置SetOrdinal();
DataTable dat = new DataTable();
//添加三列
dat.Columns.Add("col1");
dat.Columns.Add("col2");
dat.Columns.Add("col3");
//添加一行数据
dat.Rows.Add(1,2,3);
//把第三列放到第一的位置
dat.Columns["col3"].SetOrdinal(0);
关于C# DataTable 的一些操作的更多相关文章
- C#DataTable 的一些操作经常操作
关于C# DataTable 的一些操作 经常操作DATATABLE 对于一些不需要再通过sql 来重复操作的 可以通过操作datatable来达到同样的效果 方法一: 也是广为人知的一种: Y ...
- .NET中DataTable的常用操作
一.目的 在各种.NET开发中,DataTable都是一个非常常见且重要的类型,在与数据打交道的过程中可以说是必不可少的对象. 它功能强大,属性与功能也是相当丰富,用好的话,使我们在处理数据时,减少很 ...
- DataTable 中Distinct操作
DataTable dt = ds.Tables[]; DataView dataView = dt.DefaultView; DataTable dtDistinct = dataView.ToTa ...
- 关于datatable的一些操作以及使用adapter对数据的操作
private void updateToolStripMenuItem_Click(object sender, EventArgs e) {//将数据更新回数据库 //获取源数据 DataTabl ...
- DataTable对象的操作问题
DataTable,DataRow,DataClomun三种对象都是引用类型. C#中值的传递方式分为值传递与引用传递. 1.复制DataTable对象 //以下做法是错误的,dt1和dt2引用的 ...
- 2016.1.22 利用LINQ实现DataSet内多张DataTable关联查询操作(目前未发现太大价值)
DataSet ds = new DataSet(); DataTable t1 = DBFactorySingleton.GetInstance().Factory.GetDataTable(sql ...
- C# 对DataTable的简单操作
//更改列名 dt.Columns["原来的列名"].ColumnName="新的列名"; //移除列 dt.Columns.Remove("列名&q ...
- C#中DataTable排序、检索、合并等操作实例
转载引用至:http://www.jb51.net/article/49222.htm 一.排序1.获取DataTable的默认视图2.对视图设置排序表达式3.用排序后的视图导出的新DataT ...
- datatable,查询,排序,复制等操作
DataTable排序,检索,合并详解 一.排序 获取DataTable的默认视图 对视图设置排序表达式 用排序后的视图导出的新DataTable替换就DataTable (Asc升序可省略,多列排序 ...
随机推荐
- 《算法导论》 调用RANDOM(0,1),实现RANDOM(a,b)的过程
描述RANDOM(a,b)的过程的一种实现,它只调用RANDOM(0,1).作为a和b的函数,你的程序的期望运行时间是多少?(RANDOM(0,1)以等概率输出0或者1,RANDOM(a,b)以等概率 ...
- ue4 c++ 接口
使用UE4接口比起普通的高级语言,要多做很多工作,是因为要兼容蓝图的使用,有一些小坑需要注意,开始吧. 1.新建接口类 打开UE4编辑器,与往常一样,新建C++类,然后选择Object继承,然后取名字 ...
- 怎么解决svn清理失败且路径显示乱码问题
http://jingyan.baidu.com/article/295430f1d728830c7e0050f9.html 上面这个网址是百度经验给的方法,我也是参照这个方式解决了问题,虽然是解决了 ...
- dell omsa 监控,Nrpe信号量泄露
ipcs -s | awk '/nrpe/ {print "ipcrm -s ",$2} ' | sh /etc/init.d/dataeng stop /etc/init.d/d ...
- kaggle& titanic代码
这两天报名参加了阿里天池的’公交线路客流预测‘赛,就顺便先把以前看的kaggle的titanic的训练赛代码在熟悉下数据的一些处理.题目根据titanic乘客的信息来预测乘客的生还情况.给了titan ...
- window7下karma 报 nodejs request TypeError: The header content contains invalid characters BUG
这个BUG 估计只有中国人才 遇到 打开你的依赖node_modules\karma\node_modules\connect\lib\patch.js 将里面的setHeader方法改成下面这样,干 ...
- 照片元数据信息以及在照片中写入gps信息
/// 照片元数据编码 在下面的文章里,可以看到图片所有的元数据定义信息 https://msdn.microsoft.com/zh-cn/library/system.drawing.imaging ...
- DELPHI 读取csv 格式文本文件
procedure TForm1.btn1Click(Sender: TObject); var sFile,sLine: TStrings; r,c:Integer; begin sFile := ...
- 安装Nexus
- Gvim插件管理Vundle
之前关于gvim的博客中提到的很多插件安装比较繁琐,这一篇来介绍一下gvim管理插件的插件--vundle的安装以及使用,让givm的插件安装更加的简单 首先给出vundle的git地址 https: ...