如何根据另一个datatable列值更新数据表列值

本文关键字:数据表 更新 datatable 何根 另一个 | 更新日期: 2023-09-27 18:29:52

我有两个数据表

DataTable dt1=new DataTable();
DataTable dt2=new DataTable();

我想根据其他数据表列的值来更新列的一个值。

例如:

dt1包含列[setFamilyno] ["HouseNo"] ["Surname"]

dt2包含相同的列

我想更新dt1 DataTable[setFamilyno]列。

  • 如果CCD_ 6等于CCD_。并且对于来自dt2["HouseNo"] ["Surname"]的下一行等于dt1["HouseNo"] ["Surname"],则为所有这样的匹配设置[setfamilyno]=2的值

如何根据另一个datatable列值更新数据表列值

尝试创建带有ForeignKeyConstraint的DataRelation。帮助将足以知道如何做到这一点。

DataView view = new DataView(Datatble);
int viewcount = view.Count;

DataTable distinctValues = view.ToTable(true, "SurNameEnglish", "HouseNumber");
int distinctcount = distinctValues.Rows.Count;
int cnt = 1;
 for (int j = 0; j < distinctcount; j++)
                {
                    string surname = distinctValues.Rows[j]["SurNameEnglish"].ToString();
                    string Housenumber = distinctValues.Rows[j]["HouseNumber"].ToString();
                    for (int i = 0; i < viewcount; i++)
                    {
                        if (Datatble.Rows[i]["SurNameEnglish"].Equals(surname) && Datatble.Rows[i]["HouseNumber"].Equals(Housenumber))
                        {

                            Datatble.Rows[i]["Family"] = cnt;
                            Datatble.AcceptChanges();
                        }
                    }
                    cnt++;
                }
}