C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
запрос к ClientDataSet
trigger
Отправлено: 12.07.2004, 13:05


Не зарегистрирован







можно ли писать запрос к ClientDataSet? если да, то что указать в качестве имени таблицы?

я создаю новые поля в этой компоненте, потом заполняю данными, и хочу просуммировтать одно поле.
вариант вручную читать каждое поле, прибавлять к сумме и делать ClientDataSet1->Next() — в моем варианте не пройдет.

не подскажете идею?
AVC
Отправлено: 12.07.2004, 13:23


Ветеран

Группа: Модератор
Сообщений: 1583



QUOTE

можно ли писать запрос к ClientDataSet

Нет, так как сервер БД о нем ни чего не знает.

QUOTE

не подскажете идею

Есть два пути:
1. Таки проходить по DataSet'у.
2. Написать Select так, что бы это за вас выполнил сервер.
Вариант 1 не так уж плох если у вас сложновычисляемые поля, хотя, с другой стороны, почти все можно запихнуть в Select.
Выбор варианта зависит от следующих факторов:
Сложный запрос, дающий мало строк — вараинт 1
Простой запрос с большим результатом — сервер это сделает быстрее.
a1
Отправлено: 26.10.2004, 10:05


Не зарегистрирован







Esli prosto nado naite sumu v kakogo-to pola Field1, to mozno :
esli v Design-time- v Field Editor'e vibrat New Field, zadat ego type Aggregate i zadat
Expression  — SUM(Field1). Tolko pri etom ne zabit u DataSet'a postavit AggregatesActive =true i v poluchivshemsja pole toze ne zabit postavit Active=true;
V run time- mozno analogichno -DataSet->Aggregates->Add() i t.d

Вернуться в Работа с базами данных в C++Builder