Хорошо, во-первых, эту проблему довольно сложно описать. Извините, если вы не понимаете моих объяснений.
Когда я изменяю значения в DataSet через DataGridView и впервые вызываю SQLiteDataAdapter.Update (),обновить базу данных.Файл базы данных даже не меняет время «последнего изменения».Однако после обновления DataSet и повторного его вызова он, наконец, обновляет базу данных ... значениями, которые должны быть обновлены в первый раз.
Если были добавлены / удалены строки, все работает нормально.Это происходит только тогда, когда обновляются только значения.
Теперь, если вы не поняли, вот картинка: http://funkyimg.com/viewer.php?img=/2/1416/716/285481problem.png
Вот мой код:
using (SQLiteDataAdapter Adapter = new SQLiteDataAdapter("SELECT * FROM " + DataTable.TableName, Model.Connection))
{
SQLiteCommandBuilder Builder = new SQLiteCommandBuilder(Adapter);
Builder.ConflictOption = ConflictOption.OverwriteChanges;
Adapter.UpdateCommand = Builder.GetUpdateCommand();
Adapter.InsertCommand = Builder.GetInsertCommand();
Adapter.DeleteCommand = Builder.GetDeleteCommand();
Adapter.AcceptChangesDuringFill = true;
Adapter.AcceptChangesDuringUpdate = true;
Adapter.ContinueUpdateOnError = true;
Adapter.Update(Model.Set, DataTable.TableName);
}