Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TADOQuery скорость перемещения курсора 
:(
    Опции темы
namervasek
Дата 1.6.2012, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



всем здрасте!
есть код

Код

    MainQuery.Close;
    MainQuery.SQL.Clear;
    ConstructQueryStr(MainQuery.SQL);
    
    {$IfNDef Release}
    J := GetTickCount;
    {$EndIf}

    MainQuery.Open;

    while not FSelelectComplete do
    begin
      Application.ProcessMessages;
    end;

    {$IfNDef Release}
    ShowMessage('Запрос выполнен = ' +  IntToStr(GetTickCount - J));
    J := GetTickCount;
    I := 0;
    {$EndIf}

    MainQuery.First;
    MainListView.Items.BeginUpdate;
    while not MainQuery.Eof  do
    begin

      {$IfNDef Release}
      Inc(I);
      {$EndIf}

      MainQuery.Next;
    end;

    {$IfNDef Release}
    ShowMessage('Запрос пройден за = ' +  IntToStr(GetTickCount - J));
    ShowMessage('Кол-во полученых записей = ' + IntToStr(I));
    {$EndIf}


Делается асихроный запрос в базу результат запроса примерно 500000 строк. 
Первая месага показывает время около 17000(вполне приемлемое).
Вторая месага показывает цифру около 1760000(это где то минут 20 вышло).
Вопрос такой: можно как то ускорить перемещение курсора?



PM MAIL   Вверх
Данкинг
Дата 1.6.2012, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



А смысл? Может, возможно решить задачу как-то иначе?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
namervasek
Дата 1.6.2012, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



Смысл сего творения в заполнении ListView инфой. заполняется List соотвествено в цикле. 
PM MAIL   Вверх
Данкинг
Дата 1.6.2012, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



А, ну тогда вариант - сделать обычный грид вместо листвью.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
namervasek
Дата 1.6.2012, 16:31 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



DBGrid?
Если да то скажу почему выбор пал на View. 
После формирование View необходимо что бы можно было 
1) результат сортировать по любой колонке,  
2) сортировка должна быть быстрой(запрос к базе с order by ни приемлем с таким количеством строк)
3) мюльтиселект строк 
4) разукрашивать строки таблиц как захочется(причем разукрашивать надо так что бы если строка выделена то разукрашивать не надо) 
Самые выжные первые дав пункта.
Вторые два в DBGrid реализовать конечно можно, но четвертый пункт делается прямо сказать как то через ж... (особено закраска строк)

Пробовал TMS-ий грид но проблемы там такие же как и обычного

Это сообщение отредактировал(а) namervasek - 1.6.2012, 16:33
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.