1

У нас есть база данных у курсантов, которая использует Access для всех функций и данных. Он начинает работать медленно и не всегда обновляется. Я знаю, что Access 2003 и выше (не уверен в старых) позволяет вам подключаться к внешнему источнику данных для данных и использовать отчеты и формы только из доступа

Если бы я преобразовал все эти данные в MSSQL для данных и просто указал на Доступ к серверу, улучшится ли многопользовательская производительность и надежность, ухудшится или останется прежней? Каковы плюсы и минусы для небольшой базы данных с менее чем 5 пользователями одновременно?

1 ответ1

2

Присоединить "внешний интерфейс" Access, содержащий запросы, формы и отчеты, к таблицам данных, хранящимся в базе данных SQL Server, очень просто. Существует инструмент под названием "Помощник по миграции Microsoft SQL Server для Access", который передает существующую базу данных Access на SQL Server.

Однако очень сомнительно, выиграете ли вы от этого. "Маленькая" база данных с менее чем 5 одновременными пользователями не должна иметь проблем с производительностью или надежностью, работающих в любой версии Access обратно в Access 97. У меня лично есть более 200 установок очень сложной многопользовательской системы доступа, многие из которых работают более 10 лет, в каждой из которых одновременно работают 25 пользователей без особых проблем.

Сказав это, SQL Server, безусловно, является более пуленепробиваемым, чем механизм доступа, но он не должен быть необходим для небольшого приложения, которое вы описываете. Единственная реальная проблема с надежностью доступа - это надежность сети. Разорванные или непоследовательные соединения с сетью могут привести к повреждению базы данных, но это повреждение почти всегда легко исправить, просто открыв файл данных в Access и позволяя ему автоматически восстанавливать себя.

Производительность SQL Server определенно будет лучше с сотнями пользователей одновременно, но с 5 пользователями большинство функций будут такими же быстрыми или даже быстрее в Access. Имейте в виду, что даже если 5 человек могут открыть приложение, единственное время, когда они фактически осуществляют транзакцию с базой данных, - это когда они загружают данные в форму или отчет (выполняют запрос) или сохраняют изменения в данных. Наблюдая за их работой, вы почти наверняка обнаружите, что даже два фактических одновременных действия с базой данных не так уж распространены.

Почти все проблемы с производительностью приложений Access связаны с неправильным дизайном, начиная со структур данных и заканчивая неправильным дизайном запросов и форм, использованием макросов (никогда) и / или плохим кодом VBA. Большинство новых пользователей Access не знают о необходимости разделения многопользовательского приложения на отдельные базы данных переднего плана и базы данных. В этой статье объясняется, почему это необходимо, и как именно это сделать. Это довольно просто - в Access даже есть мастер, который поможет вам это сделать.

Если вы не можете объяснить или решить конкретные проблемы с производительностью с помощью приложения Access, вам, вероятно, следует обратиться за помощью здесь или на других форумах, описав точный характер проблемы. Есть также несколько прекрасных книг, в частности, Access Developer's Manual от Ken Getz, et. и др. Хотя он довольно старый (2002 год), он является "библией" для дизайна Access и все еще на 99% применим к более новым версиям.

Удачи!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .