информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаГде водятся OGRыSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Phrack #70/0x46 
 Возможно, Facebook наступил на... 
 50 лет электронной почте 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Похоже MySQL не поддерживает серверные курсоры ADO. Даже... 15.02.07 04:13  Число просмотров: 2826
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
> Если какие-то скрытые грабли при использовании байндинг к
> рекордсет для MySQL?
> Проблема в том, что для совершенно вменяемых вызовов
> хранимых процедур MySQL случается экзепшн-ы. Постоянно!
> ODBC лог (на клиенте) пишет, что соединение с сервером
> потеряно. В тоже время, error и qury лог на mysql пишет,
> что клиент получил ошибку чтения данных и сервер сделал
> аборт соединению. com_error же пишит в экзепшн обычные для
> M$ просто невменяемые вещи, типа нет ресурсов.
>
> Интересно, что если заменить вызов хранимых процедур на
> текст соответствующих запросов, то до какого-то момента
> работает. Особено плохо тем процедурам, где в теле запросов
> находятся union, или подзапросы. Может не в
> IADORecordBinding дело?
>
> ПС. Курсоры - серверные, таймауты по умолчанию. В принципе,
> хотя запросы и тяжёлые в процедурах, но время исполнения (в
> SQL browser) не более 300 ms.
>
> ППС. Помогите, пожалуйста мыслями.
Похоже MySQL не поддерживает серверные курсоры ADO. Даже если явно установить для _ConnectionPtr курсор adUseServer (что честно наследует _CommandPtr или _RecordsetPtr), то в дампе TCP/MySQL protocol видно, что MySQL передаёт клиенту весь набор данных, запрошенный или запросом или хранимой процедурой.
Оказалось также, что проблема с потерей соединения характерна для тех хранимых процедур, которые вызываются в цикле на клиенте. Такое впечатление, что это баг сервера MySQL, а не клиентской части. Интересно и то, что для ADO.NET 1.0.7 connector для MySQL аналогичных проблем не наблюдается пока.
<programming> Поиск 








Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2021 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach