У меня есть таблица базы данных со столбцом DECISION
, которая может принимать следующие значения: 'Y'
, 'N'
или (null)
. Может быть несколько человек, обновляющих значения в этой таблице базы данных через приложение.
Я хочу убедиться, что DataGridView
, отображающий эту информацию, регулярно обновляется для всех пользователей.
У меня есть фоновый поток, который выполняет следующее:
For Each new_row As DataRow In dsData.Tables("Progress").Rows
For Each cur_row As DataRow In dsData.Tables("List").Rows
If new_row("SEQ") = cur_row("SEQ") And new_row("DECISION") <> cur_row("DECISION") Then
cur_row("DECISION") = new_row("DECISION")
End If
Next
Next
По существу dsData.Tables("Progress")
заполняется последними данными и затем сравнивается с текущими значениями в столбце DataGridView
на основе порядкового номера SEQ
.
Я хочу, чтобы, если они отличаются, значение cur_row
меняется на new_row
.
Однако он падает, потому что иногда он пытается сравнить строку 'N'
или 'Y'
с (null)
, что невозможно сделать.
Какой лучший способ обойти это?
Я хочу сравнить и обновить любой (null)
, поскольку он является подлинным состоянием в этой системе.