![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TClientDataSet и освобождение памяти [dBase, FoxPro, Paradox]
salex © (2007-03-13 14:52:00)Программа должна обрабатывать большие массивы данных.
Можно ли сделать следующее: после того, как обработано N записей, удалять их из памяти, т.е. чтобы DataSet работал как однонаправленный курсор, только вперед.
Jan (2007-03-13 16:36:00) [1]
> проблема в том, данная программа реализована на самом деле
> как для "плоских" СУБД(paradox, dbase), так и для РСУБД
> firebird, MSSQL и Oracle. Программа "выдергивает" нужные
> данные из БД... Можно конечно сказать, что для firebird,
> MSSQL и Oracle использовать хранимые процедуры, но там
> достаточно сложная логика и ...
Делается промежуточный слой, который в завивисимости от СУБД будет или ХП юзать или логику на языке высокого уровня.
Desdechado (2007-03-13 15:23:00) [2]Причем тут хранимые процедуры?
Используй просто однонаправленные датасеты: TQuery.Unidirectional (БДЕ), TSQLDataset (dbExpress), TADODataset (ADO).
salex (2007-03-13 15:19:00) [3]>Desdechado
проблема в том, данная программа реализована на самом деле как для "плоских" СУБД(paradox, dbase), так и для РСУБД firebird, MSSQL и Oracle. Программа "выдергивает" нужные данные из БД... Можно конечно сказать, что для firebird, MSSQL и Oracle использовать хранимые процедуры, но там достаточно сложная логика и ...
Собственно, можно ли в принципе сделать то, о чем спрашивается?
Desdechado (2007-03-13 15:09:00) [4]> DataSet работал как однонаправленный курсор, только вперед.
Так почему бы не использовать соответствующие задаче компоненты вместо CDS
Jan (2007-03-13 15:07:00) [5]
> Программа должна обрабатывать большие массивы данных.
Какие операции будут делаться?