Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.27;
Скачать: CL | DM;

Вниз

SQL & Delphi возможно ли прямое обращение к данным выборки?   Найти похожие ветки 

 
xmrz   (2003-03-09 16:54) [0]

Кто нибудь встречался со способом прямого чтения из памяти результатов запроса после выполнения SQL запроса стандартными средствами Delphi (TQuery, TStoredProc)?


 
JibSkeart ©   (2003-03-09 16:56) [1]

Всмысле а поточнее ?


 
xmrz   (2003-03-09 19:28) [2]

К примеру: имеется заранее определённая структура данных, которую можно организовать в классе или record, она соответствует структуре данных выборки Query, известно (спорный момент...) куда BDE кладёт данные посли выборки из Query, а потом "накладывая" свою структуру на область памяти последовательно считывать строки таблицы. Вопрос в принципе в чём: повысит ли это скорость загрузки данных и если повысит, то как это сделать (т.е. где та самая область памяти куда Query складывает данные)


 
Serginio   (2003-03-11 12:21) [3]

Могу быть не правым,но обычно Query результаты запроса держит в темповой локальной таблице (для Dbase точно). В принципе можно загрузить все данные в память с поиощью ReadBlock. Смотри BDE32.hlp, в частности DbiQExecDirect,DbiQAlloc.


 
BlackTiger   (2003-03-11 14:47) [4]

Скорость это не повысит никак абсолютно, может быть даже замедлит.
Зато проблем получишь море.

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

Одно дело как-то их получить, а совсем другое - работать с ними. Максимум, чего ты получишь, если доберешься, огромный блок несистематизированной информации, короче - гору мусора (в прямом и программистском понимании).

А после долгих мучений ты просто получишь свой собственный БДЕ или АДО, который если и будет чуть быстрее, то только за счет выкидывания части функционала.

Успехов!


 
Fbist ©   (2003-03-11 14:58) [5]

Смотри метод
array:= recordset.GetRows(Rows,Start,fields);

Возвращает вариант в виде двумерного массива.



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

Текущий архив: 2003.03.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-88011
Алексий
2003-03-12 17:33
2003.03.27
получить время создания файла


7-88271
Evgeniy_k
2003-02-02 16:41
2003.03.27
Событие


14-88139
Danilka
2003-03-05 09:25
2003.03.27
Выстраданый совет...


1-87993
Sergei
2003-03-14 06:52
2003.03.27
Переключение фокуса между


9-87770
delpher
2002-06-17 23:14
2003.03.27
GLScene - самые азы