Ошибка Access: "Запрос поврежден"

Применяется к
Access для Microsoft 365 Access 2021 Access 2019 Access 2016

Последнее обновление: 9 декабря 2019 г.

ПРОБЛЕМА

При попытке выполнить запрос на обновление может отображаться ошибка: «Запрос "имя запроса" поврежден». 

Ошибка, указывающая на повреждение запроса

Это происходит для запроса на обновление, который:

  • Обновляет одну таблицу (т. е. он обновляет таблицу, а не результаты запроса на выборку или присоединение
  • Указывает предложение WHERE (т. е. содержит записи в строке "Условия" в конструкторе запросов)

Эта проблема влияет на все поддерживаемые сборки Access.

Эта проблема возникла 12 ноября 2019 г. при применении следующих обновлений для сборок MSI:

Office 2010: описание обновления для системы безопасности для Office 2010: 12 ноября 2019 г. (KB4484127)
Office 2013: описание обновления для системы безопасности для Office 2013: 12 ноября 2019 г. (KB4484119)
Office 2016: описание обновления для системы безопасности для Office 2016: 12 ноября 2019 г. (KB4484113)
Office 2016: 12 ноября 2019 г., обновление для Office 2016 (KB3085368)

В таблице ниже указаны даты и номера сборок для самого раннего доступного обновления, но для сборок MSI указанное исправление не является обязательным, и оно должно применяться вручную.  Существует обновление системы безопасности от 10 декабря для сборок MSI, предоставляемое в службе WSUS и устанавливаемое автоматически, которое исправляет эту проблему:

2010: KB4484193 — сборка 14.0.7243.5000
2013: KB4484186 — сборка 15.0.5197.1000
2016: KB4484180 — сборка 16.0.4939.1000

СОСТОЯНИЕ: ИСПРАВЛЕНО

Эта проблема будет устранена для всех версий:

ПРИМЕЧАНИЕ. Если при попытке применить исправление появляется сообщение "В системе не установлены продукты, к которым можно было бы применить этот пакет", причиной может быть использование установки Office с технологией "нажми и работай" (C2R), а не установки MSI.  В этом случае воспользуйтесь соответствующими инструкциями для версии C2R после выхода исправления.

Версия Сборка прервана Исправленная сборка Дата выпуска Официальная ссылка на исправление проблемы
Access 2010 MSI, распространяемый пакет ядра СУБД Access 2010 7241.5000 7241.5001 27 ноября 2019 г. KB2986256
Access 2010 C2R 7241.5000 7243.5000 10 декабря 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access 2013 MSI 5189.1000 5189.1002 27 ноября 2019 г. KB2965317
Access 2013 C2R 5189.1000 5197.1000 10 декабря 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access 2016 MSI, распространяемый пакет ядра СУБД Access 2016 4927.1000 4927.1002 18 ноября 2019 г. KB4484198
Access 2019 с корпоративной лицензией 10352.20042 10353.20037 10 декабря 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access для Microsoft 365, Актуальный канал/Access 2016 C2R/Access 2019 (версия 1910) 12130.20344 12130.20390 18 ноября 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access для канала Office 365 Semi-Annual Enterprise
(Версия 1902)
11328.20468 11328.20480 22 ноября 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access для канала Office 365 Semi-Annual Enterprise
(Версия 1808)
10730.20416 10730.20422 22 ноября 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access для Office 365, Полугодовой канал (предварительная корпоративная версия), (версия 1908) 11929.20436 11929.20494 22 ноября 2019 г. Используйте файл и учетную запись
UpdateOptions/UpdateNow
в приложении Office
Access для Office 365 (версия Microsoft Store) 12130.20344 12130.20390 18 ноября 2019 г. Открыть Microsoft Store
Щелкните на... в правом верхнем углу
Выберите «Загрузки и обновления».

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

Например, если у вас есть запрос, аналогичный следующему:

UPDATE Таблица1 SET Таблица1.Поле1 = "x" WHERE ([Таблица1].[Поле2]=1);

Вы можете создать новый запрос (Запрос1):

SELECT * from Таблица1;

И обновить исходный запрос:

UPDATE Запрос1 SET Запрос1.Поле1 = "x" WHERE ([Запрос1].[Поле2]=1);

Заменив все указания Таблицы1 на Запрос1

Это позволит получить такие же результаты и избежать ошибки.

При необходимости также можно удалить обновление.

Для сборок MSI см. следующую статью:

Сведения о возможности удаления Office

Для Microsoft 365 см.:

Отмена изменений до более ранней версии Office 2016 "нажми и работай"

Дополнительные ресурсы

Значок эксперта (работа мозга, механизм) Вопросы экспертам

Обращайтесь к экспертам, обсуждайте новости, обновления и рекомендации, а также читайте наш блог.

Microsoft Tech Community

Значок сообщества Получите помощь в сообществе

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

Форум Office на сайте Answers

Значок запроса функции (лампочка, идея) Предложить новую функцию

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

Отправка отзывов

См. также

Исправления и временные решения для последних проблем в Access