| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Проблемы с TSQLQuery |
| Автор: Anatoliy99 27.5.2010, 20:38 |
| Юзаю бесплатную turbodelphi и dbexpress с TSQLQuery Q3.Close; Q3.SQL.clear; Q3.SQL.Text := 'select fotofile from fotos where cid=1'; Q3.Open; Получаю Значение q3.FieldByName('fotofile').value Дальше делаю Q3.Close; Q3.SQL.clear; Q3.SQL.Text := 'select fotofile from fotos where cid=2'; Q3.Open; По этому значению cid в таблице нет ни одной записи и должен быть null, НО поле q3.FieldByName('fotofile').value содержит значение предыдущего запроса! Такого не наблюдается, если в выборке есть хоть одна запись, то есть не null. Как очистить результаты предыдущего запроса? Подскажите плз! |
| Автор: Antimol 2.6.2010, 11:55 |
| Может быть попробовать не очищать, а привести к какому то типу, например: q3.FieldByName('fotofile').AsInteger |
| Автор: superVad 2.6.2010, 13:18 |
| Я не уверен что там должен быть нулл. Там вообще должна быть ошибка - т.к. ты обращаешься к несуществующей записи. И можешь юзать параметры, а не переписывать весь запрос - красивей как то будет |
| Автор: Antimol 2.6.2010, 13:51 |
| если нет значений, тогда возвращает null, а null это не 0, а неопределеное значение |
| Автор: morpheyushka 2.6.2010, 15:33 | ||
Нафига такое делать?????? В твоем случае нужно делать так:
|