Я разработал систему, в которой группа пользователей (около 50 человек прямо сейчас) регистрирует данные и постоянно просматривает зарегистрированные данные. Система хранит данные в базе данных Access, и в настоящее время я использую режим adModeShareDenyNone для всех пользователей, чтобы база данных никогда не блокировала доступ к базе данных.Есть ли способ открыть общее доступное только для чтения подключение к базе данных Access Access с использованием ADO?
Однако было прошено, чтобы я разработал простой рабочий лист Excel, действующий как интерфейс, в котором пользователь может написать оператор выбора sql, а затем извлекать данные на листе в соответствии с этим (через VBA). Это очень просто, и я создал такой, однако я хочу, чтобы он предотвратил выполнение манипулятивных утверждений (вставка, обновление, удаление), то есть действует как система только для чтения.
Однако я не могу найти способ сделать это, не забирая базу данных для другого пользователя, а это не значит, что база данных постоянно используется несколькими пользователями. Есть ли способ сделать то, что я хочу? Я думал о других режимах подключения, но все они (помимо adModeShareDenyNone), похоже, применяют какую-то блокировку.
Чтобы уточнить, пользователь вводит свой собственный оператор SQL? Если да, не можете ли вы просто проверить или ограничить строку через VBA, прежде чем разрешить ее выполнение? – joshua9k