Последнее обновление: 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 "нажми и работай"
Дополнительные ресурсы
Вопросы экспертам
Обращайтесь к экспертам, обсуждайте новости, обновления и рекомендации, а также читайте наш блог.
Получите помощь в сообществе
Задавайте вопросы сотрудникам службы поддержки, MVP, инженерам и другим пользователям Office и находите решения.
Предложить новую функцию
Мы будем рады вашим отзывам и предложениям. Вам наверняка есть, что сказать. Поделитесь с нами своими мыслями.
См. также
Исправления и временные решения для последних проблем в Access