делаю так
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 - параметр
Как дождаться выполнения запроса
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
- SergeyS
- Сообщения: 196
- Зарегистрирован: 21 ноя 2006, 17:12
- Откуда: Хакасия, Абакан
- Контактная информация:
запрос гарантированно успевает выполниться (ты же его не в отдельном потоке запускаешь).
Попробуй параметр взять в кавычки:
если это конечно строка...
Попробуй параметр взять в кавычки:
Код: Выделить всё
select count(id_file) from filet where dir='df'
-
- Сообщения: 230
- Зарегистрирован: 31 авг 2006, 13:11
как видно из
ADOQuery13.Parameters.Items[0].Value:=adotable1.FieldByName('dir').AsString;
+
select count(id_file) from filet where dir=df
Df - это параметр
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, должен выполниться.
Средствами БД запрос выполнял? Параметр точно присваивается?
Средствами БД запрос выполнял? Параметр точно присваивается?

-
- Сообщения: 230
- Зарегистрирован: 31 авг 2006, 13:11
Мда ошибка была в другом. Раньше я таблицу и запрос подключал отдельно. Щас поставин через АДОконекшен начало работать правильно.