Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать запрос к вычисляемому полю ? [D6, Paradox]


Солер ©   (2004-07-28 20:43:00) 

Уважаемые, Мастера!
Помогите начинающему.
В таблице есть вычисляемое поле (age) тип данных - integer, которое в обработчике событий onCalcFields вычисляет возраст.   Всё работает.
Потом делаю запрос на выборку людей с возрастом, например от 25 до 40 лет

begin
with Query1 do
begin
with SQL do
begin
Clear;
Add('Select age');
add('from extr');
add ('Where age BETWEEN 25 AND 40');
end;
open
end;
Query3.Active:=True;
DBGrid1.DataSource:=DataSource2;

В результате - чистый DBGrid1. Такой же запрос по другому столбцу работает.
В чём ошибка?
Может быть к вычисляемому полю запросы нужно проводить как - то по другому?
Спасибо


sniknik   (2004-07-28 22:55:00) [1]

> Ошибки не будет, т.к. поле-то существует в Query, просто оно еще не вычислено...
т.е. как? поле есть но не вычесленое, т.е. пустое, так? ну тогда это не вычисляемое поле а реальное без значений.

хотя конечно смотря что под вычисляемыми понимать (и где), если к примеру как MSSQL есть поля, тоже вычисляемые, значение расчитываются из значений других на сервере, так к этим подобный запрос пойдет. но у тебя то вычисляемое подразумевает другое (расчет на клиенте (onCalcFields)), причем тут база?

p.s. зачем ники менять?


Вовчик   (2004-07-28 21:26:00) [2]

Ошибки не будет, т.к. поле-то существует в Query, просто оно еще не вычислено...


sniknik   (2004-07-28 20:47:00) [3]

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

поставь в запрос то же самое вычисление что в onCalcFields вместо age.


Наверх

Титульная страница Поиск, карта сайта Написать письмо