Вниз
Скачать: CL | DM;

Запрос и ProgressBar   Найти похожие ветки 

← →
Zacho ©   (2005-06-15 21:24) [40]

Zacho ©   (15.06.05 20:45) [39]
Но новое значение генератора клиент получит только после очередного fetch (т.е. после MyDataSet.Next


Дополню: на самом деле клиент эти значения будет получать "пачками", в зависимости от того, сколько записей выберется за один фетч.
Только что проверил :) И просто запросом, и с ХП. Запрос  выбирает примерно 7000 записей. В другом процессе отслеживается значение генератора. В первом делаем DataSet.Open. Во втором процессе видим, что генератор прирос на 400. В первом начинаем делать DataSet.Next. Во втором процессе видим, что некоторое время значение генератора не изменяется, потом (очевидно, первый процесс "затребовал" новую порцию данных) начинает расти. Потом останавливается. И т.д.
Так что отслеживать "прогресс" выполнения запроса с помощью генератора - занятие довольно бессмысленное.

P.S. Приведённые мной цифры довольно условны.


← →
Mike Kouzmine ©   (2005-06-16 10:36) [41]

Zacho ©   (15.06.05 21:24) [40] Ради интереса в выходные проверю.
А как ты смотришь значение генератора?


← →
Zacho ©   (2005-06-16 11:01) [42]

Mike Kouzmine ©   (16.06.05 10:36) [41]

Естественно, функцией GEN_ID


← →
Mike Kouzmine ©   (2005-06-16 12:26) [43]

Zacho ©   (16.06.05 11:01) [42] Это понятно. Я спросил как клиент получает. Не текст запроса, а как он посылается.


← →
Zacho ©   (2005-06-16 13:16) [44]

В смысле, "как посылается" ? Обычно, TIBSQL.

Я сделал 2 простеньких тестовых приложения. В одном - запрос, "дергающий" генератор, в другом - запрос, читающий "текущее" значение генератора.

Собственно, моей целью было убедится в том, что генератор будет менять значение именно в результате вызова isc_dsql_fetch, а не isc_dsql_execute2 или isc_dsql_execute. В чём и убедился :)

Так что использовать генераторы можно только для "прогресса" фетча, а это гораздо проще сделать без генераторов (например, потому что не понадобится дополнительный коннект для отслеживания изменения значения генератора)



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

Скачать: CL | DM;



Память: 0.52 MB
Время: 0.027 c
3-1119451191
Магнум
2005-06-22 18:39
2005.07.31
Advantage


14-1120677507
Piter
2005-07-06 23:18
2005.07.31
Сколько стоит билет до Алушты?


1-1121244630
Вольный Стрелок
2005-07-13 12:50
2005.07.31
Консольное приложение - косой вывод кириллицы на экран


3-1119420416
CRACKISH
2005-06-22 10:06
2005.07.31
Копирование куска базы!


11-1103779933
DVK
2004-12-23 08:32
2005.07.31
Лишняя начальная строка в ListView




   Наверх