Вычисляемое поле БД

Общие вопросы: версии и диалекты, синтаксис языка, cтруктуры и типы данных (массивы, строки, списки...), обработка данных и т.д.
Ответить
DenProx
Сообщения: 1
Зарегистрирован: 09 окт 2009, 17:41

Доброго времени суток. У меня такая задача: Имеется БД (любая, где есть числовое поле), необходимо добавить в эту таблицу дополнительное вычислительное поле, в котором необходимо вычислить: 1. Сумму всех значений данного столбца содержащено числовые значения; 2. Найти среднее значение этой суммы;

Для БД необходимо использовать компонеты - Table, DataSource, DBGrid

Вот код, который пробывал изначально:
s:=0;
Table1.First;
While not Table1.Eof do
begin
s:=s+Table1Size.asInteger;
Table1.next;
end;

// но он не просто не работает, а вообще портачит Delphi, в результате чего можно закрыть ее, только через Диспечер задач, путем завершения процесса.

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

autocalcfields приводит к бесконечному циклу.
А по существу - поле в каждой строке таблицы содержащее не относящуююся к этой строке инфу - нарушение нормальности, чуть ли не первой формы.
Изображение
Ответить