Вниз
Скачать: CL | DM;

Как сделать запрос к вычисляемому полю ?   Найти похожие ветки 

 
Солер   (2004-07-28 20:43) [0]

Уважаемые, Мастера!
Помогите начинающему.
В таблице есть вычисляемое поле (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 20:47) [1]

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

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


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

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


 
sniknik ©   (2004-07-28 22:55) [3]

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

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

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
1-1091703495
Nata
2004-08-05 14:58
2004.08.22
Процесс


1-1091616994
Гыук
2004-08-04 14:56
2004.08.22
Строки, файлы... оптимизировать?


3-1091183028
AndrewK
2004-07-30 14:23
2004.08.22
Поделитесь опытом работы с Uniqueidentifier


1-1091693250
Андрей Сенченко
2004-08-05 12:07
2004.08.22
Работа с ресурсами. Что не так ?


6-1087901569
NLO
2004-06-22 14:52
2004.08.22
UDP




   Наверх