Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с передачей большого объема данных с сервера, на клиент. [D7, MSSQL]


pASkuda ©   (2004-02-06 11:17:00) 

На сервере стоит MSSQL 2000.
На клиенте стоит BDE 5.01; Программа написан на Dephi 7, пользтся TStoredProc.

На сервере хранится некая процедура, результат который обычный селект. Селект возвращает табличку в одну строку, но с множеством колонок(~120). Все эти колонки varchar причем размером <=250. В Query-аналайзере процедура исполняется на ура.
А клиент при StoredProc.Open сразу падает, напрочь. Изменяю процедуру на сервере, т.е. убираю из селекта несколько любых колонок и все ок…данные доходят.
Т.е. получается что размер передаваемых данных превышает некий допустимый размер...
ВОПРОС: может делов в BDE настроках, если да то в каких, если нет то в чем???

В настройка Drivers\Native\MSSQL поставил BlobSize=1000 и BlobToCach=65536 т.е. по максимуму и все равно не получается.

PS: Невдаваясь в подробности задачи скажу, что вернуть данные надо обязательно в одном селекте.


pASkdua   (2004-02-10 14:34:00) [1]

У меня DBE 5.01...
к сожалению, вопрос так и не решен


Romkin   (2004-02-06 14:43:00) [2]

Обнови версию BDE, может помочь


pASkdua   (2004-02-06 14:15:00) [3]

;-) кешно спасибо, но это точно не вариант. проет почти полностью написан, а такой глюк только в одной форме, в одной процедуре.... бумс искать решение =((((
дебаг ничего путевого пока не дал, понял тока что ошибка происходит в SQLMSS32.DLL, тама код пытается обратиться по некорктному адресу.. а вот почему в регистре оказывается некаректный адрес еще не понял =((


Sandman25   (2004-02-06 11:36:00) [4]

Могу только посоветовать перейти с BDE на более быстрые (и современные) технологии. Если есть желание, можно включить use debug dcu и по трассировать - возможно, удастся понять причину.


pASkdua   (2004-02-06 11:34:00) [5]

TDS PACKET SIZE был = 4096, сейчас =16384 нефига =((( таже трабла


Sandman25   (2004-02-06 11:25:00) [6]

Попробуйте изменить TDS PACKET SIZE. Возможно, нужно, чтобы запись помещалась в 1 пакет.


Наверх

Титульная страница Поиск, карта сайта Написать письмо