如何比较数据表

本文关键字:数据表 比较 何比较 | 更新日期: 2023-09-27 18:07:50

背景

我有一组1000-9999之间的数字,分为两个数据表,它们都具有相同的Schema。然后克隆一个数据表的模式,然后用两个原始表中的行填充。第三个新数据表随后显示在数据网格视图中。

问题

然后,我如何在数据网格视图中突出显示包含第一个数据表中的行?

代码

 private void combineTables()
        {
            bothIdsTbl = UsedIdsTbl.Clone();
            dataGridView3.DataSource = bothIdsTbl;

            for (int i = 0; i <= UnUsedIdsTbl.Rows.Count - 1; ++i)
            {
                bothIdsTbl.ImportRow(UnUsedIdsTbl.Rows[i]);
            }
            for (int i = 0; i <= UsedIdsTbl.Rows.Count - 1; ++i)
            {
                bothIdsTbl.ImportRow(UsedIdsTbl.Rows[i]);
            }
           dataGridView3.Sort(this.dataGridView3.Columns["stationid"], ListSortDirection.Ascending);

         }

如何比较数据表

最佳解决方案如下:

  • 在填充之前,在第三个表中添加一个"flag"列
  • 在该列中输入一个值,指示该行是否从第一个表中导入
  • 使用DataGridView的CellFormatting事件进行更改细胞根据标志列反向着色

您可以使用名为merge的命令来组合这两个数据表。

如果这些数据来自数据库,您可以考虑联合查询或任何其他选项来组合数据或在一次调用中获取所有数据。