Это распространенное недоразумение:
MS Access должен извлечь файл всей базы данных на локальный компьютер, чтобы сделать какие-либо запросы или обновления
Рассмотрим этот запрос:
SELECT first_name, last_name
FROM Employees
WHERE EmpID = 27;
Если EmpID проиндексирован, ядро базы данных прочитает достаточно индекса, чтобы найти, какие строки таблицы соответствуют, а затем прочитает соответствующие строки. Если индекс включает в себя уникальное ограничение (скажем, EmpID является первичным ключом), чтение будет быстрее. Механизм базы данных не читает ни всю таблицу, ни даже весь индекс.
Без индекса EmpID механизм будет выполнять полное сканирование таблицы таблицы Employees, то есть ему придется читать каждую строку таблицы, чтобы определить, какие из них соответствуют значениям EmpID.
Но в любом случае, движку не нужно читать всю базу данных ... таблицы клиентов, инвентаризации, продаж и т. Д. ... у него нет причин читать все эти данные.
Вы правы, что есть издержки для соединений с внутренними файлами базы данных. Движок должен управлять файлом блокировки для каждой базы данных. Я не знаю масштабы этого воздействия. Если бы это был я, я бы создал новую внутреннюю базу данных и импортировал бы таблицы из других. Затем сделайте копию внешнего интерфейса и снова свяжите его с внутренними таблицами. Это даст вам возможность непосредственно изучить влияние на производительность.
Мне кажется, что реляционная целостность должна быть сильным аргументом для объединения таблиц в единый сервер.
Что касается блокировки, вам никогда не нужно блокировать всю внутреннюю базу данных для рутинных операций DML (INSERT, UPDATE, DELETE). Базовый механизм базы данных поддерживает более детальную блокировку. Также пессимистическая или оппортунистическая блокировка - независимо от того, происходит ли блокировка после начала редактирования строки или откладывается до сохранения измененной строки.
На самом деле «медленная сеть» может быть самой большой проблемой, если медленная означает беспроводную сеть. Доступ безопасен только в проводной локальной сети.
Редактировать : Доступ не подходит для сетевой среды WAN. См. эту страницу Альберта Д. Каллала.