Как дождаться выполнения запроса

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

делаю так
ADOQuery13.Active:=false;
ADOQuery13.Parameters.Items[0].Value:=adotable1.FieldByName('dir').AsString;
ADOQuery13.Active:=true;
if ADOQuery13.Fields[0].AsInteger>1 then
и т.д.

так вот иногда запрос не успевает выполниться и в проверке условия выдает старые значения.

сам запрос select count(id_file) from filet where dir=df

df - параметр
Аватара пользователя
SergeyS
Сообщения: 196
Зарегистрирован: 21 ноя 2006, 17:12
Откуда: Хакасия, Абакан
Контактная информация:

запрос гарантированно успевает выполниться (ты же его не в отдельном потоке запускаешь).
Попробуй параметр взять в кавычки:

Код: Выделить всё

select count(id_file) from filet where dir='df'
если это конечно строка...
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

как видно из
ADOQuery13.Parameters.Items[0].Value:=adotable1.FieldByName('dir').AsString;
+
select count(id_file) from filet where dir=df

Df - это параметр
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

namomelkor, согласен с SergeyS, должен выполниться.
Средствами БД запрос выполнял? Параметр точно присваивается?
Изображение
namomelkor
Сообщения: 230
Зарегистрирован: 31 авг 2006, 13:11

Мда ошибка была в другом. Раньше я таблицу и запрос подключал отдельно. Щас поставин через АДОконекшен начало работать правильно.
Ответить