Re[8]: "Зависание" окна при выполнении SQL запроса
От: Igor Trofimov  
Дата: 04.09.04 17:08
Оценка:
DAS> А при чем тут генераторы. В запросе генераторы могут и не участвовать. Например, это один select (так, для определенности ).

Да есть там финт с ушами один. Например, если включить в список SELECT функцию GEN_ID, то по мере вычисления строк запроса значение генератора будет меняться и это видно из другой транзакции. Да, изврат и негибко. Но в каждой конкретной СУБД могут найтись хотя бы такие способы оценки хода выполнение.

DAS> Про Оракл — если можешь привести конкретный пример — приведи, пожалуйста.

Нет, не могу Я же писал — может и есть что-то подходящее в инфе о сессии. А может и нет.

DAS>Ну, мой способ, например, используется при копировании файлов в проводнике windows. Win не знает, сколько времени займет копирование, поэтому и говорит — "Осталось около n минут". Причем эти минуты могут, как уменьшаться, так и увеличиваться.


Ситуация тут совершенно другая. У проводника есть точная информация о проценте выполнения — размер файла известен и сколько уже скопировано, тоже известно. "Подбирает" он только оставшееся время исходя из средней скорости, которая может меняться.

В нашем же случае не известно толком ничего. И поэтому если не прибегать к вышеописанным извратам, адекватный прогресс-бар сделать ну никак не получится. А если он неадекватный и показывает чушь — имхо, лучше пусть его вообще не будет, показывай время, прошедшее от начала запроса лучше или число отфетченных записей, если время уходит именно на фетч.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.