Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Вниз

Как сделать ProgressBar на выполнение запроса???   Найти похожие ветки 

 
Relaxxx ©   (2004-04-15 10:24) [0]

Собственно проблема, есть запрос который долго выполняется и нужно чтобы, во время его выполнения бежал ProgressBar. У меня база данных Oracle8.0.5 и пользуюсь ODAC 3.85


 
Sergey13 ©   (2004-04-15 10:43) [1]

Нормально - никак. ИМХО.
Лучше анимашку какую нить запусти. Или работай над запросом, иногда потребность в прогресбаре отпадает совсем. 8-)


 
dimm22   (2004-04-15 10:53) [2]

Запусти ProgressBar по таймеру, просто чтобы пользователь видел, что программа не висит.


 
Relaxxx ©   (2004-04-15 11:02) [3]

очень жаль, :-((((
А запрос уже оптимизирован, просто это для ведомости и работает он со множеством таблиц и со сложными групировками


 
VAleksey ©   (2004-04-15 11:06) [4]

На самом деле для оракла как-то можно.
Ведь считает он стоимость запроса. Значит примерно можно определить состояние запроса по количеству прочитанных блоков. Какая-то его тулза даже умеет это делать. Сам видел :-)).


 
Relaxxx ©   (2004-04-15 11:28) [5]

Узнать бы какая :-), попробую сейчас порытся может что-то и накопаю


 
Reindeer Moss Eater ©   (2004-04-15 11:32) [6]

Фигня все это.
Сервер сам ничего не знает про свою нагрузку которая у него будет через три секунды. Поэтому и время окончания запроса он не знает, а только догадывается.
Прогресс бар - баловство.
Cursor := crSQLWait или просто анимация


 
Соловьев ©   (2004-04-15 11:34) [7]

У ADO есть TCustomADODataSet.OnFetchProgress - может такое есть и у DAO

Но имхо, можно только закачку определить, но никак не время выполнения запроса. Это зависит от многих причин.


 
serge35   (2004-04-15 11:38) [8]

Даже мелкософт при всей своей любви к рюшечкам ничего кроме анимации не придумал.
У Оракла тоже по-моему ничего нет. Если бы было, то в Oracle Applications наверняка это было бы раелизовано.


 
slayer   (2004-04-19 03:45) [9]

Посмотри может подойдет http://www.delphimaster.ru/download/index1.html


 
VAleksey ©   (2004-04-19 09:18) [10]


> serge35   (15.04.04 11:38) [8]

См.

> Reindeer Moss Eater ©   (15.04.04 11:32) [6]


 
Anatoly Podgoretsky ©   (2004-04-19 09:22) [11]

Такой прогресс бар можно сделать только выполнив весь запрос, но тогда пропадает смысл в этом. Да и то только в монопольном режиме, при том только для процента выполнения, но не для времени.


 
Vemer ©   (2004-04-19 09:26) [12]

Вариант - узнаем с помощью Count число строк в будущем запросе, а потом рисуем ProgressBar определенное время исходя из данной цифери. Но не очень прямое решение..:).


 
Sergey13 ©   (2004-04-19 09:38) [13]

2Vemer ©   (19.04.04 09:26) [12]
А как рисовать прогрес для запроса с count?


 
dimm22   (2004-04-19 10:04) [14]


> Вариант - узнаем с помощью Count число строк в будущем запросе

Так это по времени, наверное, будет сравнимо с самим запросом ?!


 
_sulent ©   (2004-04-19 13:30) [15]

Мне кажется только аниме здесь выход, более никак... запросы на то они и есть запросы... как говорилось выше, даже сервер не знает в процессе сколько он будет выполнять тот или иной запрос!
Конечно можно попробовать сделать как тоже говорилос выше, узнать количество записей и первый проход и расчитать примерное время, но все это криво и будет тратиться больше времени на выполнение запроса!

Делай аниме и не мучайся...


 
Женя   (2004-04-19 14:29) [16]

интересно, а как же строится програссбар в  DbExplorer32.
Выглядит весьма естественно, похоже, отображается по количеству обработанных на данный момент строк.
Притом отображается и при рапросах и при проверке и при перестройке индексов корректно. Может посмотрите, кто там больше в этом смыслит?
у меня RX Database Explorer v2.5 Кошевникова и Павлука.


 
Соловьев ©   (2004-04-19 14:31) [17]


> Выглядит весьма естественно, похоже, отображается по количеству
> обработанных на данный момент строк.

что значит обработаных? при запросе? или при каких-то операциях?


 
Женя   (2004-04-19 14:36) [18]

Обработанных запросом.



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

Форум: "Базы";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.032 c
11-1069056501
Deimos
2003-11-17 11:08
2004.05.16
вопрос по TMoveMethod


3-1082103402
Иксик
2004-04-16 12:16
2004.05.16
Distinct с учетом регистра


1-1083352125
mr.Delphin
2004-04-30 23:08
2004.05.16
ФОКУС


14-1083060913
syte_ser78
2004-04-27 14:15
2004.05.16
ping


7-1080584823
Slash_from_Ryazan
2004-03-29 22:27
2004.05.16
Не вызывается функция RegisterServiceProcess.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский