запись ms-доступа / блокировка на уровне страницы - PullRequest
0 голосов
/ 30 июля 2010

я сбит с толку относительно того, что происходит с базой данных

у меня есть разделенная база данных внешнего и внутреннего доступа

каждый пользователь имеет свой собственный интерфейс

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

вот настройки: альтернативный текст http://img688.imageshack.us/img688/5779/47047459.png

кто-нибудь знает, что здесь происходит>?

1 Ответ

2 голосов
/ 31 июля 2010

Как вы можете видеть на скриншоте, настройки по умолчанию - без блокировок. Однако настройки на этом экране предназначены ТОЛЬКО для значений по умолчанию, КОГДА ВЫ создаете НОВУЮ форму. Другими словами, изменение настроек на этом экране НЕ повлияет на существующие формы в приложении, которое вы уже создали.

Исключением из вышеупомянутого курса является глобальная настройка использования блокировки строк, которая является общесистемной настройкой.

Еще раз: Указанные выше параметры «без блокировок», «все записи» и «отредактированная запись» являются ТОЛЬКО значениями по умолчанию для новых форм, которые вы создаете. Они НЕ меняют поведение существующих форм в вашем приложении.

Таким образом, вы ДОЛЖНЫ ВСЕХ вносить изменения в формы в зависимости от формы в вашем приложении. Этот параметр вы найдете на вкладке данных таблицы свойств форм для блокировки поведения.

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

Я подозреваю, что ваша настоящая проблема в том, что при открытии базы данных доступа создается отдельный временный файл "блокировки", который управляет конфликтами пользователей и блокировками записей (и имейте в виду, что этот файл временной блокировки создается в том же каталоге, что и где общие данные, в этом случае ваша общая папка общих данных)

Это означает, что когда пользователи, у которых нет разрешений CREATE FILE в этой общей внутренней папке, означают, что доступ будет принудительно открыт для файла данных в режиме READ ONLY (если доступ не может создать этот файл управления блокировками, он по умолчанию только для чтения).

Что это означает, когда первый пользователь, открывающий базу данных, не может создать этот временный отдельный файл блокировки, тогда по большей части дополнительные пользователи, входящие в базу данных, также не смогут вносить изменения, а также будут в режим только для чтения. Это приводит к сложной проблеме устранения неполадок, когда выясняется, что порядок, в котором пользователь FIRST открывает базу данных, в некотором смысле определяет, что база данных будет доступна только для чтения.

Это кажется очень странной проблемой, но становится гораздо понятнее, когда объясняется описанная выше загадка временного файла блокировки.

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

Итак, во время устранения неполадок и тестирования убедитесь, что КАЖДЫЙ ОДИН пользователь имеет права доступа к этой внутренней папке. Если вы этого не сделаете, то вы обнаружите, что порядок пользователей, открывающих этот файл (и тех, у кого нет прав на создание файла), будет определять статус базы данных только для чтения.

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