Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2016, 16:17   #1
oldsnowman
Участник клуба
 
Аватар для oldsnowman
 
Регистрация: 20.02.2015
Сообщений: 1,226
Вопрос как сделать прогресс бар выборки

Есть большие таблицы, и есть к ним запрос. Выполнение запроса занимает некоторое время. Мне нужно сделать прогресс бар, который процентно показывал бы сколько остается до завершения скрипта. Вариант с крутящимися часами и т.д. не подходит. Клиентская часть хоть на С++, хоть на java, хоть на чем угодно. Такой прогресс бар возможно сделать или нет?
oldsnowman вне форума Ответить с цитированием
Старый 05.05.2016, 16:21   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

в общем случае - нет, невозможно.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.05.2016, 16:24   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Чет не слышал о протоколировании исполнения запроса на SQL-сервере. Собственно он и сам не знает сколько времени запрос будет выполнятся. Так что только псевдо, типа крутящихся часов и т.п. Имхо
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.05.2016, 16:26   #4
oldsnowman
Участник клуба
 
Аватар для oldsnowman
 
Регистрация: 20.02.2015
Сообщений: 1,226
По умолчанию

где-то когда-то слышал вариант, что можно на подзапросы разбить, находить максимальное кол-во, и от всего этого и танцевать с переполнением. Понимаю, что это все извращение, но... хотца...

Цитата:
Собственно он и сам не знает сколько времени запрос будет выполнятся.
Тут даже не во времени дело, а в оставшемся процентном соотношении.

Последний раз редактировалось Аватар; 05.05.2016 в 16:31.
oldsnowman вне форума Ответить с цитированием
Старый 05.05.2016, 16:27   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Limit? Чего хорошего в этом? Только увеличить время выполнения путем кусочно-прерывистой выборки.
Цитата:
Тут даже не во времени дело, а в оставшемся процентном соотношении.
Ну а процент как узнать?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.05.2016, 18:33   #6
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Так что только псевдо, типа крутящихся часов и т.п. Имхо
Да все правильно , пуск "прогресбар или часов" будеть крутится и когда закончится это операция пуск остановится .
-- или можно там делать курсор
Код:
procedure TfrmPanel.dxBarLargeButton1Click(Sender: TObject);
 var
    oldcur: TCursor;
begin
  oldcur := screen.Cursor;
  screen.Cursor := crHourGlass;
  try
  
   With MyQuery do
   begin
     // писать ваши запрось
   end;
   
   finally
      screen.Cursor := oldcur; // здесь освобождаем курсоров
 end;
end;
определить точное время никак не получится

Последний раз редактировалось xxbesoxx; 05.05.2016 в 18:36.
xxbesoxx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прогресс бар как уровень загрузки из консольдного окна Jleksern Общие вопросы Delphi 6 31.10.2013 02:25
Прогресс бар Gudzik11 Общие вопросы Delphi 41 15.05.2013 10:03
Типа Прогресс бар! WizarD.89 Microsoft Office Excel 3 24.04.2011 14:20
Цикл и прогресс-бар А)-(дрей Microsoft Office Excel 4 17.03.2011 18:13