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

Вниз

@@spid и PacketRecords   Найти похожие ветки 

 
Sedunov Vitaly   (2003-10-07 09:10) [0]

Доброо времени суток! У меня возникла следующая проблема: использую ADODataSet -> DataSetProvider -> ClientDataSet. ADOConnection устанавливается только 1 раз. Этому коннекту присваивается свой идентификатор (@@spid). Как только я испозую порционную подкачку в ClientDataSet, то запрос select @@spid на сервере выдает значение, отличное от изначального @@spid. После прекращения порционной подкачки (как только весь набор данных передан на клиента), то значение @@spid становится таким же, как было изначально. Вопрос: как во время порционной подкачки узнать @@spid начального коннекта? Спасибо.


 
Polevi   (2003-10-07 10:00) [1]

этого не может быть :-)


 
Sedunov Vitaly   (2003-10-07 13:18) [2]

Может. Я тоже был очень удивлен. Попробуйте сами!


 
KSergey   (2003-10-07 13:32) [3]

Вероятнее всего, вы все же не зацепилсь за исходный ADOConnection.
А все ADO-шные компоненты, как известно, очень даже умеют цепляться за сервер самостоятельно.


 
Sedunov Vitaly   (2003-10-07 14:01) [4]

Зацепился. Ситуация подробнее.

1. ADOConnection.Connected=true
2. select @@spid = 60
3. активизация ClientDataSet, который через DataSetProvider сцеплен с ADODataSet, у ClientDataSet свойство PacketRecords=100, кол-во записей>1000
4. select @@spid = 64
5. а) ClientDataSet.Active=False или б) выкачать весь набор данных на клиента
6. любое действие в пункте 5 дает select @@spid = 60,т.е. изначальному значению.

ADOConnection.Connected устанавливается только один раз и никаких дополнительных коннектов и переконнектов нет.


 
Polevi   (2003-10-07 14:20) [5]

ShowMessage в BeforeConnect поставь, чудес то не бывает


 
Sedunov Vitaly   (2003-10-07 14:27) [6]

ShowMessage вылезает один раз. Уже все такие штуки перепробовал. Коннект происходит один раз. Второй коннект (который 64) даже не виден в таблице master.dbo.sysprocesses. У 60-го только меняется поле sql_handle. Как только порционная подкачка прекращена, поле sql_handle для spid=60 обнуляется.


 
Polevi   (2003-10-07 14:32) [7]

курсор какой у рекордсетов


 
Sedunov Vitaly   (2003-10-07 15:08) [8]

Курсор у ADODataSet серверный.


 
Polevi   (2003-10-07 15:50) [9]

клиентский сделай и доложи :-)


 
Sedunov Vitaly   (2003-10-07 15:58) [10]

Делал. Эффект такой же...


 
Polevi   (2003-10-07 16:05) [11]

мистика какаято
не знаю что и посоветовать, попробуй поиграть с параметрами подключения ADOConnection, там чтото есть с кешированием соединений


 
Sedunov Vitaly   (2003-10-07 16:28) [12]

Не помогли никакия играния с параметрами. Переделал я немного этот алгоритм и завался на system_user. Он для основного коннекта и "виртуального" один и тот же. Да, кто бы знал, что при порционной подкачке создается еще один коннект...

Всем огромное спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
7-89598
uno crezo
2003-08-13 03:58
2003.10.27
регистр и данные dialup-соединения


14-89503
ZeroDivide
2003-10-10 10:43
2003.10.27
Новый альбом MUSE - Absolution. Кто слушает? Какие впечатления?


1-89207
Lizard
2003-10-15 14:33
2003.10.27
Как с помощью мыша менять местами строки в Listbox ?


14-89509
dmtr
2003-10-09 10:23
2003.10.27
WinXP и объем физ. памяти более 2 ГБт


1-89355
TUser
2003-10-16 09:18
2003.10.27
Перестал ловиться глюк!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский