我一直在尝试一次遍历两个数据表以使用嵌套的 for 循环比较它们,但是外部循环不断超出条件变量。
query_strg = "my query"
rs = New SqlCommand(query_strg, myconn)
adap.SelectCommand = rs
adap.Fill(dset)
count = dset.Rows.Count
For k = 0 To (count - 1)
For j = 0 To (dset1.Rows.Count - 1)
If (dset1.Rows(j)("name2").ToString() =dset.Rows(k)("name1").ToString()
OrElse (dset.Rows(k)("name2").ToString() = "General"
OrElse (dset.Rows(k)("name2").ToString() = "general"
OrElse (dset.Rows(k)("name2").ToString() = "Reports")))) Then
dset.Tables(0).Rows(k).Delete()
dset.Tables(0).AcceptChanges()
count = dset.Tables(0).Rows.Count
End If
Next j
Next k
这是我的代码.... dset 仅包含单列,dset1 包含 5 列。我需要将 dset1 中的单个列与 dset 进行比较,如果相等,我需要删除该列,并且我还执行了其他强制性比较....
但问题是外部 for 循环超出范围,导致 if 条件之一将异常抛出为“No row available at no”。类似的东西......
需要知道为什么 for 循环会越界以及是否没有解决方案......我需要一个替代想法来执行此操作。