Текущий архив: 2003.04.24;
Скачать: CL | DM;
ВнизProgress в обработке запрса? Найти похожие ветки
← →
Matvey (2003-04-07 21:33) [0]Проблема состоит в следующем, при осуществлении выборки из базы посредствам SQL
SQL.Add("SELECT * FROM Reg_Reestr");
SQL.Add("WHERE Naiminov LIKE :Zapros");
Params.ParamByName("Zapros").AsString:="*"+NewText+"*";
примерно так, необходимо отображать ход поиска так как записей порядка 150 тысяч, и конечному пользователю будет не интересно смотреть на мертвый экран.Как это сделать используя TGauge, или есть другие специально заточенные под такие надобности компоненты?
И еще нормально ли что размер базы MDB, имеющей как я уже говорил, порядка 150 тысяч записей, составляет 500 Mb, как его можно сократить так всего одна таблица и 7 String полей?
← →
dred2k (2003-04-07 22:00) [1]Ну, во-первых, сама идея SQL не приемлет никаких там цветных гауджей. ;)
Во-вторых, если использовать LocalSQL BDE, то организация такого мониторинга возможна, но есть масса ограничений. Для стандартных DBISAM-драйверов (Paradox, DBase, ...) работает механизм callback-ов. Признаться, работает по-разному и криво (для парадокса изучено подробно и могу потом рассказать...). Для SQL-серверов (через SQLLinks) callback-и тоже имеют место, но лишь на уровне буквально двух вызовов - запрос ушел и запрос пришел (проверено на IB, как будет работать Access - не знаю, думаю - так же).
В третьих, есть вероятность, что подобные заморочки может поддержать какая-либо платформа в отдельности (средствами "живого" API). Вариант не исключается, доп. сведений по перечисленным платформам нет. ;)
Вот и все пока.
← →
Matvey (2003-04-07 23:32) [2]Да, не густо. :(
← →
sniknik (2003-04-07 23:54) [3]для Access береш родной ему ADO + включаеш асинхронное получение данных, в зависимости от настроек будут возвращатся(или нет) количество полученных записей на onFetchProgress (клиент/сервер зависят но не помню где что).
дальше твое дело, жди конца запроса и показывай прогресс или начинай обработку не дожидаясь конца.
> 150 тысяч записей, составляет 500 Mb
ну скорее всего нужно просто сделать "упаковку и восстановлений" в Access (проще всего) можно и програмно.
Страницы: 1 вся ветка
Текущий архив: 2003.04.24;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.007 c