MS Access заморозка - PullRequest
       14

MS Access заморозка

1 голос
/ 15 ноября 2011

Мой Microsoft Access 2007 зависает на мне. Может ли это быть 700 запросов?

Да, он находится в сети, но только 2-3 человека получают доступ к серверу одновременно.

Я пробовал компактировать и ремонтировать, а также кричать на него. Ничего не сработало.

Ответы [ 2 ]

1 голос
/ 15 ноября 2011

Исходя из своего опыта, я могу заверить вас, что до 15 человек, работающих одновременно с внутренним MDB, должны работать без видимого замерзания.

Вы можете изучить следующее:

  1. Насколько велик ваш MDB?если он слишком велик, рассмотрите возможность разбить его на более мелкие части и поместить все ваши исторические и редко используемые данные в отдельный файл - вы можете легко перепривязать всю таблицу во внешнем интерфейсе к нескольким внутренним файлам.
  2. Проверьте ваши запросы и код VBA.Используйте оптимистичные блокировки везде, где только можно, и избегайте блокировок таблиц для чтения!
  3. Проверьте подключение к сети и пропускную способность жесткого диска?Ваша служба пытается выполнить проверку на вирусы каждый раз, когда вы обновляете MDB?Может быть, обновление запущено?
  4. Если ничего не помогло - попробуйте установить MS SQL Express, быстро увеличить размеры таблиц и заново привязать их к своему внешнему интерфейсу с помощью подключения ODBC - вам не нужно повторно-записать свои запросы (если они написаны на независимом SQL, без DISTINCTROW и т. д.).
0 голосов
/ 15 ноября 2011

Звучит как проблема с блокировкой. Двигатель Jet не был разработан для многопользовательского доступа и не очень хорошо с ним справляется. Вы должны рассмотреть возможность обновления до SQL Server, который справляется с этим гораздо лучше. Экспресс-версия SQL Server бесплатна, а в MS Access есть мастер увеличения, который сделает всю тяжелую работу за вас.

...