Одновременный доступ к одной БД sqlite, возможно ли?
Добрый день.
Помогите развеять сомнения. Правильно ли я понимаю что два отдельных процесса не могут работать одновременно с одним файлом БД sqlite?
Спасибо.
И да и нет. SQLite может работать в многопочтоном режиме, главное не использовать одновременно одно и то же подключение. https://www.sqlite.org/threadsafe.html
Почитал статью, получается в случае работы нескольких процессов надо в каждом из них проверять ошибку SQLITE_BUSY при записи, и если она возникает повторять попытку позже пока не получишь успех?
MAKAPOH: Еще можно увеличить busy_timeout и таким образом снизить вероятность появления SQLITE_BUSY. Однако тут все зависит от вашей задачи и соответственно от того, как часто процессы будут обращаться к базе.
Пока к сожалению не понятно кто и как часто будет лазить в базу, думаю лучше постараюсь обойтись одним процессом чем самому управлять доступом к базе. Думаю вопрос можно считать исчерпанным. Комментарий EndUser можно считать ответом на вопрос. Всем спасибо за дискуссию.