Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];

Вниз

Медленное выполнение ADODataSet1.Next   Найти похожие ветки 

 
Виктор23   (2004-12-08 16:39) [0]

Господа, вот какой вопрос:
Есть ADODataSet1, в нем примерно 50000 записей. Выполнение ADODataSet1.Next тем дольше, чем ближе позиция к концу датасета.
То есть, при последовательном переборе при смещении позиции время выполнения ADODataSet1.Next пропорционально увеличивается. Причем увеличивается значительно(10-20 милисекунд уже к 20000-позиции)
При выполнении ADODataSet1.Recordset.MoveNext такого не наблюдается, что дает основания полагать, что дело все же не в ADO, а в ее дельфовой обертке.
Но нужно использовать именно ADODataSet1.Next.

И у меня вопрос: возможно кто-то сталкивался с этим и знает, в чем тут причина медленного выполнения ADODataSet1.Next?
Может, какое-то свойство нужно установить правильно?

P.S. У TClientDataSet такого не наблюдается. Все происходит влет.


 
sniknik ©   (2004-12-08 17:01) [1]

курсор клиентский или серверный?

ClientDataSet всегда работает как клиентский.


 
Dok_3D ©   (2004-12-08 20:41) [2]

2 sniknik

В том то и дело что клиентский. Причем пробовал даже без базы данных. Делал просто, создавал структуру полей, затем ADODataSet1.CreateDataSet.
И добавлял большое количество записей. Все равно, чем дальше от начала датасета - тем драматичней.
Что за напасть ...


 
Dok_3D ©   (2004-12-08 20:45) [3]

Виктор23 и Dok_3D[2]- в данном контексте участники одной и той же ситуации. Надеюсь, понятно...


 
sniknik ©   (2004-12-08 21:04) [4]

Dok_3D ©   (08.12.04 20:41) [2]
> Причем пробовал даже без базы данных. Делал просто, создавал структуру полей, затем ADODataSet1.CreateDataSet.
можеш прислать этот тест? проверю на 7й дельфе.


 
Dok_3D ©   (2004-12-08 23:53) [5]

2 sniknik ©  
Обязательно вышлю. Завтра поутру.


 
ocean   (2004-12-09 10:17) [6]

может, сделать stored procedure?


 
Dok_3D ©   (2004-12-09 11:23) [7]

2 ocean  
>>сделать stored procedure?

Не понял, какая тут связь... Но это не главное.

А главное то, что я нашел, в чем причина.
Если вызвать ADODataSet1.DisableControls, то все происходит влет.
Уряя...



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

Форум: "Базы";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.044 c
4-1100913538
webmaster
2004-11-20 04:18
2005.01.09
Клавиша Windows на клавиатуре


1-1103802908
Lamka
2004-12-23 14:55
2005.01.09
Помогите с созданием игры


14-1103715054
Vaitek
2004-12-22 14:30
2005.01.09
Анимация трехмерной модели.


14-1103282454
TUser
2004-12-17 14:20
2005.01.09
Никому монитор не нужен?


14-1103368408
MAINUSER
2004-12-18 14:13
2005.01.09
Программеры ОБЬЕДИНЯЙТЕСЬ





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский