Странная ошибка: «DoCmd.OutputTo acOutputQuery» удаляет запрос - PullRequest
2 голосов
/ 13 февраля 2009

Я столкнулся с проблемой, когда DoCmd.OutputTo acOutputQuery удаляет сам запрос во второй раз.

Есть ли какое-нибудь решение / патч для этой ошибки (по крайней мере, мне кажется, что это ошибка)?

Ответы [ 6 ]

1 голос
/ 26 марта 2014

Я знаю, что прошло некоторое время с момента первоначальной публикации, но я нашел решение, которого я здесь не видел. Я использую Access 2010. Кажется, что почти каждый раз, когда я выполняю DoCmd.OutputTo acOutputQuery..., мой сохраненный запрос все еще появляется в моем списке запросов, но SQL удаляется, что впоследствии также удаляет мой выходной файл из сети.

Я просто сбрасываю SQL перед вызовом DoCmd.OutputTo acOutputQuery...

CurrentDb.QueryDefs("MyQuery").SQL = "SELECT..."

, а затем позвоните

DoCmd.OutputTo acOutputQuery, "MyQuery"...

Пока все хорошо.

1 голос
/ 17 марта 2011

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

1 голос
/ 14 февраля 2009

Re: ваш комментарий.

Вы делали копию файла или копировали объекты между двумя базами данных? Если во-вторых, вы можете попробовать сделать компакт и восстановить файл-копию оригинала.

Возможно, вы даже захотите попробовать это на настоящем оригинале.

1 голос
/ 13 февраля 2009

Я думаю, что поведение, которое вы описали "... удаляет сам запрос, второй раз, когда он выполняется" происходит, когда запрос не возвращает записей.

0 голосов
/ 23 апреля 2015

Другой обходной путь - изменить исходный запрос на запрос создания таблицы, а затем использовать

DoCmd.OutputTo acOutputTable, TableName, ...

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

0 голосов
/ 16 апреля 2010

это случается и со мной тоже. Я использую Access 2003.

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

Похоже, что в Access 2007 нет этой проблемы.

...