У меня есть пользователь, который создал базу данных с помощью Access 2003.

Проблема в том, что если он открывает базу данных и внес некоторые изменения, другой пользователь может открыть базу данных, но он не может работать с ней. Если он вышел из программы, то пользователь может внести некоторые изменения.

Я хотел бы знать, возможно ли им работать над этим одновременно, когда они открывают базу данных?


Дополнительный вопрос:

Я попытался выполнить "Разделение базы данных" здесь, и после того, как я щелкнул "Разделить", я получил ошибку: «Механизм базы данных не смог заблокировать таблицу, потому что она уже используется другим человеком или процессом» ... что делает это значит? Я заблокировал стол?


2 ответа2

1

Пользователи пытаются внести изменения в дизайн или просто добавить / отредактировать / удалить данные? Доступ не позволяет нескольким пользователям одновременно изменять дизайн одного объекта. Если они только пытаются редактировать данные, то есть несколько возможных вариантов.
1) Пользователь в какой-то момент открыл базу данных для монопольного доступа. вам нужно, чтобы каждый пользователь базы данных открыл базу данных, сначала открыв доступ, выбрав file-> open, перейдя к файлу, затем щелкните стрелку рядом с кнопкой open и затем нажмите open (верхняя опция в списке из 4, что должно появиться).
2) Форма, которую используют пользователи, может быть настроена на блокировку всей таблицы вместо только текущей записи. Если вы открываете форму в режиме конструктора, есть свойство формы, которое сообщит вам, насколько велика блокировка.

Нет необходимости разбивать базу данных на приложения и данные, чтобы несколько пользователей могли редактировать данные одновременно. Хотя обычно неплохо разделить базу данных.

0

Да, вы можете, но обычно это делается для разделения mdb на части. Таблицы находятся в одной .mdb где-то в общей папке, а запросы, формы и отчеты размещаются в клиентской версии базы данных. Версия клиента содержит ссылки на таблицы в базе данных «back-end». Используйте Файл -> Получить внешние данные -> Ссылка ..., чтобы подключиться к внутренним таблицам.

У каждого пользователя есть локальная копия «front-end», но все они имеют общий «back-end».

Вы можете попробовать самую простую вещь: Инструменты -> Параметры -> Дополнительно -> Режим открытия по умолчанию и проверить, что для него установлено значение Общий доступ и проверены ли оба параметра Открытые базы данных с использованием блокировки на уровне записи и Отредактированная запись , но мой опыт просто делает это в Многопользовательская среда является смешанной. Иногда работает, иногда нет.

ОБНОВИТЬ

Посмотрите на ваше изображение: если поле формы, о котором идет речь, отображается на одну и ту же запись базы данных, то нет, вы не можете одновременно редактировать 2 человека. Если поле отображается на разные записи, то да, это возможно.

Еще одно обновление

Если у вас есть Access 2003 или аналогичный, то есть утилита Database slpitter. Выберите Инструменты -> Утилиты базы данных-> Разветвитель базы данных. Он попросит указать место для сохранения ваших файлов. Вы хотите, чтобы это был общий диск. Он должен автоматически создать связанные таблицы для вас и скопировать все данные вашей таблицы в новую «внутреннюю» базу данных, которая будет называться whatever your db name is имени вашей базы данных _be.mdb.

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