Вниз
Скачать: 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.025 c
3-1119427251
Nic
2005-06-22 12:00
2005.07.31
Текстовая база ASCII


3-1119527686
stud
2005-06-23 15:54
2005.07.31
прошу помощи составить запрос


1-1121090181
Kyro
2005-07-11 17:56
2005.07.31
Деление


3-1119354295
DelphiNew
2005-06-21 15:44
2005.07.31
Invalid class typecast


1-1121082788
Catik
2005-07-11 15:53
2005.07.31
Есть число или 5-значное 70001 или 6-значное 120034




   Наверх