VB.Net Datagridview 循环,尽管同一数据库中的选择和更新列仅更新第一个选定列



我正在尝试通过 a 按钮根据数据网格视图中的多选更新数据库中的值。我通过一个名为SQLControl的类执行所有SQL命令,以保持代码干净。

我的问题是最后一个选定的行没有更新到数据库,即使我可以看到所有选定的行值都在数据网格视图中更新。

Private Sub UpdateData()
    Dim rowcount As Integer = dgvData.SelectedRows.Count - 1
    For Each row As DataGridViewRow In dgvData.SelectedRows

        dgvData.Rows(row.Index).Cells(9).Value = 1

        dgvData.Rows(row.Index).Cells(10).Value = System.DateTime.Now

    Next
    SQL.DBDA.UpdateCommand = New SqlClient.SqlCommandBuilder(SQL.DBDA).GetUpdateCommand
    SQL.DBDA.Update(SQL.DBDT)
End Sub

你能用 djv 提到的row替换dgvData.Rows(row.Index)吗?

Private Sub UpdateData()
    For Each row As DataGridViewRow In dgvData.SelectedRows
        row.Cells(9).Value = 1
        row.Cells(10).Value = System.DateTime.Now
    Next
    SQL.DBDA.UpdateCommand = New SqlClient.SqlCommandBuilder(SQL.DBDA).GetUpdateCommand
    SQL.DBDA.Update(SQL.DBDT)
End Sub

除此之外,您可能还想考虑它是否无法在SQL中更新?

  1. 您的SQL.DBDA.Update是否为最后一行返回了任何错误?

  2. 您知道SQL.DBDA.Update更新的 SQL 语句是什么吗?

相关内容

  • 没有找到相关文章

最新更新