Я создал программное обеспечение .Net C# с использованием базы данных SQLite3.0. В программном обеспечении данные вставляются почти в минуту, каждый день. Но очень редкие времена (примерно раз в месяц), он теряет свои данные, как никогда.SQLite теряет свои данные
Все мои таблицы имеют столбцы идентификации. Чтобы проверить потерю, я пишу вложенное время новой строки в каждой таблице. Когда произошли потери, я заметил, что строки часа были потеряны. Но значения идентичности не были пропущены и продолжались точно. Я проверил свои транзакции, но все было в порядке.
При запуске программы создается и открывается соединение. И это соединение используется в течение всего времени без закрытия и повторного открытия. Во время выполнения есть много действий db, таких как вставка, обновление, удаление, выбор.
Может ли это быть причиной потери? Должен ли я открывать и закрывать соединение для каждого действия db?