Если сеть НЕ задействована (многопользовательский режим), то вы не заметите большой разницы в производительности.
Однако по сети? Тогда эксклюзив может иметь большое значение.
На самом деле, именно поэтому мы на протяжении 18 с лишним лет часто повторяли совет о производительности OFTEN, чтобы создать + сохранить постоянное соединение между интерфейсным приложением и общей файловой папкой, открытым во ВСЕ время.
Причина вышеизложенного состоит в том, что, когда клиентский интерфейс доступа пытается открыть таблицу (а не открыть файл внутреннего сервера), Access будет пытаться получить исключительное использование внутреннего файла. Это происходит благодаря тому, что в многопользовательском режиме несколько пользователей могут иметь ожидающие обновления, и, следовательно, буферы и т. Д. Требуют дополнительного управления, и на бэкэнде возникают «операционные блокировки». Операционные блокировки являются частью файловой системы Windows, которая позволяет нескольким пользователям одновременно открывать и работать с файлом. Хотя эта настройка позволяет нескольким пользователям одновременно работать с файлом, существует значительное замедление из-за того, что на каждой рабочей станции потенциально имеются буферы активных данных, которые необходимо записать на сервер, и БОЛЬШЕ важно, чтобы два пользователя не обновить те же записи в то же время. Таким образом, это переключение в многопользовательский режим может занять значительное количество времени, и доступ к КАЖДОМУ ВРЕМЕНИ пытается получить данные, он попытается отключить многопользовательский режим, чтобы обеспечить действительно высокую производительность.
Однако эта попытка перейти из многопользовательского режима в однопользовательский режим может занять ОГРОМНОЕ количество времени. Таким образом, используя постоянное соединение (принудительно держать открытым) с серверной частью, тогда это длительное время задержки не происходит. В дополнение к антивирусному программному обеспечению открытие файла может занять ОГРОМНОЕ количество времени.
Указанная выше проблема действительно относится только к общему бэкэнду в многопользовательской среде. И, конечно, в таких сценариях открытие базы данных как монопольного исключит указанные выше проблемы.
Таким образом, Access фактически переключается между однопользовательским и многопользовательским режимами. Такое использование системы блокировки файлов Windows, как уже отмечалось, САМОЕ, безусловно, замедляет Access, когда он переключается в многопользовательский режим (и что еще хуже, как отмечалось, попытка переворачиваться назад и вперед на самом деле замедляет работу больше, чем было получено только приростом производительности). один пользователь откроет файл). Опять же, с одним пользователем вы не заметите никакой разницы, но если у 2 или более пользователей открыт внутренний файл, то вы увидите значительные задержки с 2 или более пользователями. (Но постоянное соединение обычно устраняет задержки).
Итак, для однопользовательского режима на одной машине?
Открытие обычного или эксклюзивного, скорее всего, ничего не изменит, и вы, скорее всего, не заметите никакой разницы в производительности. (Даже чтение только в отличие от чтения / записи не будет замечено.
Однако, как только вы вводите сеть и несколько пользователей открывают общий доступ к этому файлу из сетевой папки, можно получить значительные преимущества и увидеть использование эксклюзивного режима. Как отмечалось, эксклюзивный режим помогает предотвратить переключение между однопользовательским режимом в сети (для повышения производительности) и переключением в многопользовательский режим (с буферами клиентской рабочей станции, на которых имеются данные, ожидающие записи). Поэтому имейте в виду, что Access будет пытаться открыть серверную часть как однопользовательский режим (это не эксклюзивный режим, а однопользовательский режим для повышения производительности в сети).
Однако в целом стоимость переключения между двумя режимами имеет тенденцию к большему замедлению, чем к преимуществам скорости при работе с файловым ресурсом по сети.
Таким образом, эксклюзивный режим при подключении к сети часто приводит к значительному увеличению производительности.
НА локальной машине без сети? Поскольку процессор обладает такой большой вычислительной мощностью, то открытие в режиме полного чтения / записи или только для чтения обычно не приводит к сколько-нибудь заметному повышению производительности.
Такответ здесь действительно применим, если вы работаете с файлами Access по сети. Для локальных неразделенных баз данных на одной рабочей станции вы не получите ничего заметного независимо от того, в каком режиме вы открываете базу данных, или даже на самом деле, если вы используете запрос моментального снимка (только для чтения), а не запрос с полным чтением / запишите результаты.