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

Недавно мы перенесли базу данных доступа на SQL-сервер. По завершении мы начали тестировать базу данных с использованием базы данных доступа к фронту, которую мы имели (наша предыдущая настройка включала в себя два файла доступа, один для интерфейса и один для задней части). Мы почти сразу получили ошибку.

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

Теперь у нас есть несколько человек, работающих над этими интерфейсами, но во время получения этого сообщения я единственный человек, который обращается к данным. Моим общим процессом для тестирования было вставить данные, используя форму. затем попытайтесь удалить данные. Я знаю, что данные приводят к таблице, и я знаю, что я единственный, кто просматривает или пытается отредактировать эту информацию, мы использовали соединение ODBC для присоединения SQL-сервера к интерфейсу. Любые предложения или помощь приветствуются, я буду внимательно следить за этой нитью. Ожидайте любых вопросов, на которые вы просите меня ответить относительно быстро.

Ответ 1

В этой статье вы обнаружите, что ошибка может быть вызвана типом данных бит:

Эта проблема возникает, если поля с битовым типом данных в базе данных на базе SQL Server остались пустыми. Microsoft Access интерпретирует пустые поля как поля, которые содержат значения Null, а механизм базы данных Jet не освобождает их. В результате записи остаются заблокированными и недоступны для удаления.

Обратите внимание, что вы всегда должны иметь первичный ключ или уникальный ключ для обновления данных с SQL Server.

Ответ 2

Я только что установил Access 2016, и эта ошибка пыталась импортировать таблицы 2013 доступа из accdb.

По-видимому, back-end движок 2016 теперь является SQL Server. Я удалил поле, которое я намеревался использовать, но так и не сделал, поэтому он был полон Nulls. После этого никаких проблем.

Ответ 3

У меня также была эта проблема, как описано выше, подумал, что я отправлю ответ, поскольку ссылка Microsoft больше не работает.

Я перенесла back-end базы данных Access в MySQL на сервере AWS, и любая связанная таблица, которую я пыталась добавить или удалить записи, создала бы ошибку, которая является названием этого потока.

Решение для меня состояло в том, чтобы удалить поле, тип которого было "BIT", поскольку, к счастью, это было старым полем, используемым до того, как я переработал базу данных, поэтому ее можно удалить.

Ответ 4

использовать Compact & Repair Database

Ответ 5

попробуйте не использовать GetDate() в качестве значения по умолчанию при создании столбца таблицы в sql. что фиксировало мою проблему.