ADO запрос к базе данных MS Access, повышение производительности? - PullRequest
2 голосов
/ 26 января 2012

Я постараюсь сохранить это простым, в прошлом я работал над проектами, в которых мы использовали Oracle или MS SQL сервер в качестве хранилища данных с Access в качестве внешнего интерфейса, вместо того, чтобы ссылаться на таблицы, к которым я склонен используйте соединение ADO с соответствующей базой данных, чтобы открыть мои наборы записей, поскольку в большинстве случаев это быстрее, поскольку запрос выполняется к серверу, а затем возвращаются результаты, а не работа, выполняемая на локальном ПК.

Мой вопрос, который у меня наконец-то возник, заключается в том, что если я помещаю файл .mdb для доступа на сервер с более высокой вычислительной мощностью, чем на моем локальном ПК, а затем запускаю запросы из него с помощью соединения ADO (например, Oracle / MS SQL ), будет ли он обеспечивать лучшую производительность из-за .mdb был на сервере; или, поскольку это доступ, работа будет автоматически выполняться локальным ПК, поскольку доступ - это база данных с типом файла, а не сервер базы данных?

1 Ответ

4 голосов
/ 26 января 2012

Нет, это будет медленнее - запросы будут по-прежнему выполняться на стороне клиента, и вы будете иметь активную сетевую активность.

Приложения доступа всегда выполняются на стороне клиента. Блокировка осуществляется с помощью блокировок диапазона байтов файловой системы Windows для файла LDB, чтобы позволить нескольким экземплярам Access изменять один и тот же файл MDB.

Весь код выполняется на клиенте, и вам придется отправлять данные по сети. Единственная работа, которую сервер будет выполнять с файлом MDB, - это файловый сервер.

Просто используйте SQL Server Express, если Access не достаточно быстрый. Поскольку SQL Server является клиент-серверной системой, его установка на быстрый сервер поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...