如何合并并获得2个数据表之间的差异
HOW to merge and get the difference between 2 datatable
我们创建了一个合并 2 个数据的函数table。
这是代码
Public Shared Function CompareTwoDataTable(ByVal dt1 As DataTable, ByVal dt2 As DataTable) As DataTable
dt1.Merge(dt2)
Dim d3 As DataTable = dt2.GetChanges()
Return d3
End Function
我想知道代码是否不正确或什么,我的意思是我想确定这 2 个 table 之间的区别并找出它们的区别。
提前致谢
对于那些看到这个的人,这是我想出的代码
我创建了一个函数,使用它们的 ID 比较 2 个数据表
Public Shared Function CompareTwoDataTable(ByVal dt1 As DataTable, ByVal dt2 As DataTable) As DataTable
Dim rows_to_remove As New List(Of DataRow)()
For Each row1 As DataRow In dt1.Rows
For Each row2 As DataRow In dt2.Rows
If row1("ID").ToString() = row2("ID").ToString() Then
rows_to_remove.Add(row1)
End If
Next
Next
For Each row As DataRow In rows_to_remove
dt1.Rows.Remove(row)
dt1.AcceptChanges()
Next
Dim d3 As DataTable = dt1
Return d3
End Function
希望对您有所帮助
我们创建了一个合并 2 个数据的函数table。
这是代码
Public Shared Function CompareTwoDataTable(ByVal dt1 As DataTable, ByVal dt2 As DataTable) As DataTable
dt1.Merge(dt2)
Dim d3 As DataTable = dt2.GetChanges()
Return d3
End Function
我想知道代码是否不正确或什么,我的意思是我想确定这 2 个 table 之间的区别并找出它们的区别。
提前致谢
对于那些看到这个的人,这是我想出的代码
我创建了一个函数,使用它们的 ID 比较 2 个数据表
Public Shared Function CompareTwoDataTable(ByVal dt1 As DataTable, ByVal dt2 As DataTable) As DataTable
Dim rows_to_remove As New List(Of DataRow)()
For Each row1 As DataRow In dt1.Rows
For Each row2 As DataRow In dt2.Rows
If row1("ID").ToString() = row2("ID").ToString() Then
rows_to_remove.Add(row1)
End If
Next
Next
For Each row As DataRow In rows_to_remove
dt1.Rows.Remove(row)
dt1.AcceptChanges()
Next
Dim d3 As DataTable = dt1
Return d3
End Function
希望对您有所帮助