Можно ли получить доступ / запись базы данных MS Access 2003. MDB в то же время?

1277
tintincutes

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

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

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

Можно ли получить доступ / запись базы данных MS Access 2003. MDB в то же время?

Можно ли получить доступ / запись базы данных MS Access 2003. MDB в то же время?


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

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


Можно ли получить доступ / запись базы данных MS Access 2003. MDB в то же время?

0

2 ответа на вопрос

1
pipTheGeek

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

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

0
DaveParillo

Yes, you can, but typically how this is done is to split the mdb into parts. The tables reside in one .mdb in a shared folder somewhere & the queries, forms & reports live in a client-only version of the database. The client verison contains links to the tables in the 'back-end' database. Use File -> Get External Data -> Link... to connect to the back-end tables.

Each user has a local copy of the 'front-end', but they all share the common 'back-end'.

You could try the simplest thing: Tools -> Options -> Advanced -> Default Open Mode & check that it is set to Shared and that both Open databases using record-level locking and Edited record checked, but my experience just doing this in a multi-user environment is mixed. Sometimes works, sometimes not.

UPDATE

Taking a look at your image: if the form field in question maps to the same database record, then no, you can't have 2 people edit this at the same time. If the field maps to different records, then yes, it's possible.

Yet another update

If you have Access 2003 or similar there is a Database slpitter utility provided. Select Tools -> Database Utilities-> Database Splitter. It will ask for a location to save your files. You'll want this to be a shared drive. It should automatically make the linked tables for you and copy all your table data to a new 'back-end' database named whatever your db name is_be.mdb.

@DaveParillo: ты имеешь в виду, что у пользователя должна быть «внутренняя база данных», а что, если у него его нет, а у него только обычный MS Access 2003? tintincutes 14 лет назад 0
@DaveParillo: я хотел бы спросить пользователя, есть ли у него внутренняя база данных, какова правильная терминология для этого? Это правильно: какую «внутреннюю базу данных» вы используете? Спасибо tintincutes 14 лет назад 0
Back-end - это то, что вы должны создать. Он включает в себя разделение существующей базы данных на 2 части, 1 (бэкэнд) содержит только таблицы, 1 (фронтэнд) имеет все остальное. Они оба имеют доступ к файлам MDB. Вы можете спросить: «Используют ли таблицы в базе данных, которые вы используете, ссылку на внешний источник данных?» DaveParillo 14 лет назад 0
@DaveParillo: это уже проверка в этой БД. Не уверенны что делать дальше? :-( tintincutes 14 лет назад 0
Первый шаг - определить, отображается ли Text zu Gesprach 3 на совершенно разные записи или нет, если у вас есть конфликт редактирования. Если ваши пользователи пытаются редактировать одну и ту же запись одновременно, то нет, вы не можете сделать это в Access. Вы сделали :-( В противном случае вы можете приступить к разделению базы данных на части. DaveParillo 14 лет назад 0
В режиме открытия по умолчанию «Блокировка записи по умолчанию» по умолчанию - «Нет блокировок». Измените его на «Отредактированная запись» и посмотрите, подходит ли это вам. DaveParillo 14 лет назад 0
@DaveParillo: как я могу определить, соответствует ли он тем же записям? Извините, но я впервые работаю с базой данных. tintincutes 14 лет назад 0
@DaveParillo: пожалуйста, проверьте .jpg Я прикрепил еще раз. "Отредактированная запись" - это третье право? это уже проверено и также "Shared" в моем случае говорит "Freigegeben", это также проверено ... tintincutes 14 лет назад 0
Эти настройки * выглядят * хорошо, но ваш английский ** намного лучше моего немецкого. Babelfish дал мне «работал над записью данных», что звучит правильно. DaveParillo 14 лет назад 0
Единственный способ определить, являются ли они одной и той же записью, - это понять форму и дизайн таблицы. DaveParillo 14 лет назад 0
@DaveParillo: спасибо. извините, у меня не было возможности перевести. как я буду спрашивать пользователя об этом? Могу ли я спросить так: карты по-другому? tintincutes 14 лет назад 0
Пользователь не тот человек, чтобы спросить. Это вопрос дизайна базы данных. DaveParillo 14 лет назад 0
@DaveParillo: я только что прочитал ваш обновленный ответ. когда вы произносите вопрос о поле формы, подразумеваете ли вы тексты этого поля, такие как: текст zu Gespräch 2, текст zu Gespräch 3 и т. д.? извините, я не понимаю, что здесь означает «карта». У тебя есть электронная почта? tintincutes 14 лет назад 0
@DaveParillo: это правда, но он разработал базу данных сам, он сказал мне. tintincutes 14 лет назад 0
Re: что я имею в виду, когда я говорю «карты в поле». Связано ли поле * Text zu Gespräch 3 * в форме, отображаемой на вашем изображении, с одним полем в одной записи базы данных? Другой способ описать это: Таблица - это (в основном) только строки и столбцы - соответствует ли текст в * Text zu Gespräch 3 * пересечению ** 1 строки ** и ** 1 столбца **? Если ответ нет, то у вас есть проблема. DaveParillo 14 лет назад 0
@DaveParillo: я проверил это, и кажется, что поле "Text zu Gespräch 3" в форме связано с одним полем. Я снова приложил файл jpg, чтобы понять, что я имею в виду. это ты имеешь ввиду? tintincutes 14 лет назад 0
Да, так что вы должны быть в состоянии разделить эту базу данных. Сделайте копию, прежде чем начать. Вы должны работать с человеком, который изначально создал базу данных, если это возможно. DaveParillo 14 лет назад 0
@DaveParillo: большое спасибо :-) tintincutes 14 лет назад 0
@DaveParillo: вы имеете в виду на своем компьютере? tintincutes 14 лет назад 0
Я не понимаю этот последний вопрос. Вы можете выполнять работу везде, где у вас установлен MS Access. Человек, который первоначально создал базу данных, вероятно, понимает ее лучше и может помочь вам разделить базу данных. DaveParillo 14 лет назад 0
@DaveParillo: извините за это, вы упомянули, что я должен работать вместе с пользователем, поэтому мне интересно, если я должен сделать это на его ПК, разделение базы данных или около того ... tintincutes 14 лет назад 0
Нет. Ты делаешь работу где угодно. Я подумал, что вам может понадобиться их помощь в понимании БД. DaveParillo 14 лет назад 0