我有数据表 A 和 B。表 A 有第 1 列和第 2 列。第 1 列和第 2 列是主键。表 B 有第 1、2、4 列。第 1 列和第 4 列是主键。我想更新表 B,以便对于 B.1 == A.1 的每个值,我想使其 B.2 = A.2。因为 2 不是表 B 的主键的一部分,所以可能有多个 B.1 和 B.2 相同的记录,我想为所有这些行更新 2。
我被困在这种代码上:
foreach(DataRow dr in A.Rows){
DataRow Found = B.Rows.Find(dr[1]);
if(Found != null)
Found[2] = dr[2];
}
我面临的主要问题是因为表 B 有一个由表 A 共享的复合主键。该查找正在寻找两个值,但只有一个值可以来自表 A。