Скорее всего ты настраиваешь подключение в Access у каждого клиента в монопольный доступ, а нужно в не монопольный. Тогда твой вариант окажется рабочим. Но это для небольшого количества клиентов и базы данных. Некий простой вариант. Кроме того это делает данные открытыми, лёгкими для взлома, в результате любой может скопировать файл базы данных и взломать её. Если это внутри в локальной сети для нескольких пользователей, то можно расшарить. Иначе нужно искать клиент-серверные решения. Чтобы как-то защитить данные нужно разрабатывать подключение со скрытым паролем. Т.е. должна быть база данных запаролена, и только программа-клиент должна знать пароль.
Это моё минимальное видение ситуации.
Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\SERVER\Share\DB.accdb; Jet OLEDB:Database Locking Mode=0; Persist Security Info=False;
' Shared режим (общий), минимальные блокировки — классический многопользовательский режим Access
Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\SERVER\Share\DB.accdb; Jet OLEDB:Database Locking Mode=1; Persist Security Info=False;
' Optimistic Locking (рекомендуется) — пользователи не блокируют записи друг другу, меньше конфликтов
Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\SERVER\Share\DB.accdb; Jet OLEDB:Database Locking Mode=0; OLE DB Services=-1;
' Общий режим + пула соединений — быстрее при множестве коротких запросов
Provider=Microsoft.ACE.OLEDB.12.0; Data Source=\\SERVER\Share\DB.accdb; Jet OLEDB:Database Locking Mode=1; Jet OLEDB:Database Password=123;
' Оптимистические блокировки + пароль базы
Provider=Microsoft.ACE.OLEDB.16.0; Data Source=\\SERVER\Share\DB.accdb; Jet OLEDB:Database Locking Mode=1;
' Оптимистические блокировки (движок ACE 16 — Office 2019/2021/365)