[unixODBC][Диспетчер драйверов]Недопустимое состояние курсора в HP-UX

Я использую диспетчер драйверов ODBC с открытым исходным кодом с нашим драйвером, и я получаю эту ошибку 24000 (0) [unixODBC] [Диспетчер драйверов] Недопустимое состояние курсора. Я пытался отлаживать свой драйвер, но без помощи. Пожалуйста, не могли бы вы объяснить мне, эта ошибка исходит от диспетчера драйверов или от моего драйвера.


person Vivek Gaur    schedule 27.03.2013    source источник


Ответы (1)


Ошибка исходит от диспетчера драйверов. Вы будете вызывать функции ODBC не по порядку. Включите трассировку диспетчера драйверов, в odbcinst.ini добавьте

[ODBC]
Trace = Yes
TraceFile = /tmp/sql.log

Затем запустите приложение и посмотрите, что привело к ошибке.

person Nick Gorham    schedule 27.03.2013
comment
Но та же программа отлично работает с нашим менеджером драйверов. Есть ли что-то еще, что может повлиять на это? - person Vivek Gaur; 27.03.2013
comment
Возможно, другой диспетчер драйверов неисправен и не перехватывает некоторые недопустимые переходы между состояниями. Возможно, unixODBC не работает и считает этот переход состояния недопустимым. В любом случае, мы не можем сказать, пока вы не покажете нам трассировку ODBC. - person bohica; 27.03.2013
comment
Одна вещь. unixODBC изначально был написан для соответствия опубликованным переходам состояний ODBC. Но я обнаружил, что Microsoft не придерживается своих собственных документов. Поэтому со временем я удалил некоторые проверки, чтобы согласовать unixODBC с диспетчером драйверов Windows. Таким образом, вы можете найти (вы не говорите, какую версию вы используете) более позднюю версию или сборку 2.3.2pre не показывает ту же проблему. - person Nick Gorham; 28.03.2013