c#获取DataTable某一列不重复的值,或者获取某一列的所有值
实现该功能是用了DataView的筛选功能,DataView表示用于排序、筛选、搜索、编辑和导航的 DataTable 的可绑定数据的自定义视图。 这里做了一个简单易懂的Demo来讲述该方法。
1.建两张表
2.读数据库数据到dt显示到dataGridView
3.用DataView选择表dt中数据并返回表dtTemporary
4.运行效果
namespace UbdTest
{
public partial class Demo : Form
{
DataTable dt = new DataTable();//数据源
DataTable dtTemporary = new DataTable();//接收返回的所需数据 public Demo()
{
InitializeComponent();
} private void Demo_Load(object sender, EventArgs e)
{
GetData();//调用获取数据方法获得数据
}
/// <summary>
/// 从数据库获取数据方法
/// </summary>
private void GetData()
{ //建立数据库链接
string sqlconString = "Data Source=(local);Initial Catalog=Demo;User ID=sa;Password=sa";//创建连接字符串sqlconString
SqlConnection objcon = new SqlConnection(sqlconString);//创建sql数据连接对象objcon
objcon.Open();//打开数据库链接 //创建一个DataAdapter对象,它表示数据库和DataSet对象之间的链接
SqlDataAdapter dataAdapter = new SqlDataAdapter("Select*From 工作表", objcon); //创建DataSet对象的一个实例,为整个DataSet提供一个名称,然后才能开始加载数据
DataSet ds = new DataSet("Demo");//test为数据来源数据库 //用SqlDataAdapter类提供的Fill方法向DataSet加载数据
dataAdapter.Fill(ds, "工作表"); dt = ds.Tables[0];
} private void button1_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = dt;
} private void button2_Click(object sender, EventArgs e)
{
DataView dataview = dt.DefaultView;
dtTemporary = dataview.ToTable(true,"日期"); dataGridView2.DataSource = dtTemporary;
} private void button3_Click(object sender, EventArgs e)
{
DataView dataview = dt.DefaultView;
dtTemporary = dataview.ToTable(true, "工作内容"); dataGridView3.DataSource = dtTemporary;
}
c#获取DataTable某一列不重复的值,或者获取某一列的所有值的更多相关文章
- 获取对固定列不重复的新DataTable
获取对固定列不重复的新DataTable ///<summary> /// 获取对固定列不重复的新DataTable /// </summary> ///<param ...
- 获取DataTable某一列的所有值
/// <summary> /// 获取某一列的所有值 /// </summary> /// <typeparam name="T">列数据类型 ...
- 【转载】C#如何获取DataTable中某列的数据类型
在C#的数据表格DataTable的操作中,有时候因为业务需要,我们需要获取到DataTable所有列或者某一列的数据类型,此时我们可以通过DataTable中的Columns属性对象的DataTyp ...
- C#中获取DataTable某一列的值转换为集合
直接使用 //Linqvar l1 = (from d in dt.AsEnumerable() select d.Field<int>("ID")).ToList() ...
- (原创)一步步优化业务代码之——从数据库获取DataTable并绑定到List<Class>
一,前言 现实业务当中,有一个很常见的流程:从数据库获取数据到DataTable,然后将DataTable绑定到实体类集合上,一般是List<Class>,代码写起来也简单:遍历+赋值就可 ...
- oracle_删除同一列的重复数据
<!--删除同一列的重复数据 rowid 在orcle中 数据的物理地址---> delete from tbl_over_picture_alarm a where rowid not ...
- sql server显示某一列中有重复值的行
sql server查询一张表 ,显示某一列中有重复值的行,可以这样写: Select * From 表名 where 列名 in(Select 列名 From Table group by 列名 h ...
- 获取DataTable前几条数据
#region 获取DataTable前几条数据 /// <summary> /// 获取DataTable前几条数据 /// </summary> /// <param ...
- Java获取随机数获取制定范围指定个数不重复的随机数
一.JDK中提供的两种方式 1.Math类中的random()方法public static double random()返回带正号的 double 值,该值大于等于 0.0 且小于 1.0 [0. ...
- Excel查看某列的重复值
例如: 当查看的是B列的重复值时:=IF(COUNTIF(B:B,B1)>1,"重复","")
随机推荐
- 通过obs进行推流
我们除了通过ffmpeg进行推流外还可以使用OBS这个软件进行推流, 界面化工具,配置起来也方便 obs下载地址 obs的基本配置使用教程 这里需要注意的是在填写推流地址URL 的时候 有一个流秘钥 ...
- c#中 abstract 和 virtual 的区别与用法
先来看abstract方法,顾名思义,abstract方法就是抽象方法. 1.抽象方法就是没有实现的,必须是形如: public abstract void Init(); 2.拥有抽象方法的类 ...
- QA小课堂:一个网站或者APP开发要多少钱
经常遇到朋友问我:“开发一个京东商城需要多少钱?开发一个滴滴打车需要多少钱?”类似这样的需求,就连我这样一名伪开发者都不愿意去骗客户或者朋友,因为这种问题是很难回答出来的.为什么这么说呢?要知道类似京 ...
- 用一个小的例子来说明为什么TCP采用三次握手才能保证连接成功
关于TCP的三次握手,有很多朋友还在疑惑为什么是三次,而不是两次,LZ想了一下用一个例子来说明最好. 场景: 办公室有一名前台(服务器),若干业务员(fork出来的进程) 客户(客户端) 为什么我 ...
- DHCPv6,IPv6的有状态自动配置
DHCPv6,IPv6的有状态自动配置 DHCPv6的工作原理与DHCPv4极其相似,但有一个明显的差别,那就是支持IPV6新增的编址方案.DHCP提供了一些自动配置没有的选项.在自动配置中,根本没有 ...
- win10x64位系统中nodejs的安装和配置
官网http://nodejs.cn/download/ 2.下载完成后点击安装包 下一步,安装过的,这里根据自己的需求选择.选择第直接正常安装. 这一步是安装的内容,第一个是安装所有的模块,建议全部 ...
- POJ 1883 排序 ( 水 + next_permutation )
链接:传送门 题意:略 思路:next_permutation(),水,但是要注意一点的是如果是最后一个排列next_permutation会返回第一个排列并结束,所以如果到了最后一个排列还不是第k个 ...
- 【安装配置Redis】
目录 安装 配置 Redis官网:https://redis.io Redis是完全开源免费的,遵守BSD协议. Redis是一个高性能的key-value数据库. @ *** Redis具有以下特点 ...
- html全屏显示
JavaScript代码: function toggleFullScreen() { if (!document.fullscreenElement && // alternativ ...
- 从CSDN搬过来
https://blog.csdn.net/qq_34416123 从CSDN搬过来 神奇的代码竟然没有弄成博客园这里面的格式 所以以前的很多博客的代码都是直接放在那里了. 懒得去改了.