Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Почему одни запросы в DAO работают, а ADO нет?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3721
Встречался я раньше с такой проблемой. Даже кажется разбирался. Но вот столкнулся опять и не могу ничего вспомнить "отчего и почему".

Есть у меня в Access хранимых запрос "qry_Erase1"

DELETE Тб303Онс.КодСОАТОоб
FROM Тб303Онс
WHERE (((Тб303Онс.КодСОАТОоб) Like "1*"))
WITH OWNERACCESS OPTION;

Запускаю его на выполнение
                CurrentProject.Connection.Execute "qry_Erase1"
Никаких сообщений об ошибках нет, но данные не удаляются.
Запускаю его на выполнение
                CurrentDb.Execute "qry_Erase1"
Данные удаляются.

В чём дело? Почему в одних случаях запросы ADO выполняются, а в других - нет?

Вот такая конструкция выполняется без проблем.
    strSQL = "delete from ТбОператоры where КодОператора <> " & intCodOperator
    CurrentProject.Connection.Execute strSQL
Или всё дело в том, что там хранимый запрос, а здесь символьная строка?

Встречался я с этой проблемой в 2003 и 2010 версиях. В остальных наверное то же такая же ситуация.
-------------------------------------------------------------
А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса?
27 сен 17, 10:39    [20825987]     Ответить | Цитировать Сообщить модератору
 Re: Почему одни запросы в DAO работают, а ADO нет?  [new]
Анатолий ( Киев )
Guest
Joss, в ADO спецификация символов шаблона оператора Like отличается от DAO и VBA.
В вашем случае вместо Like "1*" нужно Like "1%"
27 сен 17, 11:20    [20826169]     Ответить | Цитировать Сообщить модератору
 Re: Почему одни запросы в DAO работают, а ADO нет?  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3721
Спасибо. Всё получилось. Никогда бы на это не подумал.
27 сен 17, 12:03    [20826354]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить