[egenix-users] Impossible to correct execute stored procedure
using cursors
Sirio Capizzi
sirio.capizzi at prometeia.it
Wed Nov 5 15:55:49 CET 2008
M.-A. Lemburg ha scritto:
>
> mxODBC 3.0 tries to use the ODBC 3.x API where possible,
> so that may explain why you are seeing different behavior
> compared to mxODBC 2.0.
>
> The SQL Server 2000 ODBC driver is rather old, so it's possible
> that it doesn't support the ODBC 3.x API all that well.
>
> However, our tests pass just fine for that driver as well, but
> AFAIK we don't use cursors in the tested stored procedures, so
> that's something to add to the test suite.
>
Very interesting... It is possible to force mxODBC to use only the ODBC
2.0 API? There are newer drivers for SQL Server 2000?
>
> Could you send us an ODBC trace that shows the crash (ie. stops
> after the crash) ?
Of course, you will find it in the attachment. Thank you for your help.
--
SIRIO CAPIZZI
Prometeia SpA
Via G. Marconi, 43
40122 Bologna
Italy
e-mail : sirio.capizzi at prometeia.it
phone : +39 051 6480911
---------------------------------------------------------------------------
Il contenuto e gli allegati di questo messaggio sono strettamente confidenziali, e ne sono vietati la diffusione, la riproduzione e l'uso non autorizzato. Il suo contenuto non costituisce impegno da parte della Società salvo accordo scritto tra quest'ultima ed il destinatario. Qualora il presente messaggio Le fosse pervenuto per errore, La preghiamo di comunicare immediatamente al mittente l'errata ricezione e di distruggere quanto ricevuto (compresi i file allegati) senza farne copia.
Qualsivoglia utilizzo non autorizzato del contenuto di questo messaggio costituisce violazione dell'obbligo di non rivelare il contenuto della corrispondenza tra altri soggetti, salvo più grave illecito, ed espone il responsabile alle relative conseguenze.
This e-mail (and any attachment(s)) is strictly confidential and for use only by intended recipient(s). Any use, distribution, reproduction or disclosure by any other person is strictly prohibited. The content of this e-mail does not constitute a commitment by the Company except where provided for in a written agreement between this e-mail addressee and the Company. If you are not an intended recipient(s), please notify the sender promptly and destroy this message and its attachments without reading or saving it in any manner.
Any non authorized use of the content of this message constitutes a violation of the obligation to abstain from learning of the correspondence among other subjects, except for more serious offence, and exposes the person responsible to the relevant consequences.
---------------------------------------------------------------------------
-------------- next part --------------
provaodbc cb4-1678 ENTER SQLAllocHandle
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 00000000
SQLHANDLE * 0098E984
provaodbc cb4-1678 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS)
SQLSMALLINT 1 <SQL_HANDLE_ENV>
SQLHANDLE 00000000
SQLHANDLE * 0x0098E984 ( 0x009a1788)
provaodbc cb4-1678 ENTER SQLSetEnvAttr
SQLHENV 009A1788
SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER 0x00000003
SQLINTEGER 0
provaodbc cb4-1678 EXIT SQLSetEnvAttr with return code 0 (SQL_SUCCESS)
SQLHENV 009A1788
SQLINTEGER 200 <SQL_ATTR_ODBC_VERSION>
SQLPOINTER 0x00000003 (BADMEM)
SQLINTEGER 0
provaodbc cb4-1678 ENTER SQLAllocHandle
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 009A1788
SQLHANDLE * 00A96758
provaodbc cb4-1678 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS)
SQLSMALLINT 2 <SQL_HANDLE_DBC>
SQLHANDLE 009A1788
SQLHANDLE * 0x00A96758 ( 0x009a1830)
provaodbc cb4-1678 ENTER SQLConnectW
HDBC 009A1830
WCHAR * 0x009A1938 [ -3] "db3\ 0"
SWORD -3
WCHAR * 0x745E4EC8 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745E4EC8 [ -3] "******\ 0"
SWORD -3
provaodbc cb4-1678 EXIT SQLConnectW with return code 1 (SQL_SUCCESS_WITH_INFO)
HDBC 009A1830
WCHAR * 0x009A1938 [ -3] "db3\ 0"
SWORD -3
WCHAR * 0x745E4EC8 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x745E4EC8 [ -3] "******\ 0"
SWORD -3
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Il contesto di database è stato sostituito con 'db3'. (5701)
DIAG [01000] [Microsoft][ODBC SQL Server Driver][SQL Server]Changed language setting to us_english. (5703)
provaodbc cb4-1678 ENTER SQLErrorW
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0
WCHAR * 0x0021F674
SWORD 511
SWORD * 0x0021FAC4
provaodbc cb4-1678 EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0 (5701)
WCHAR * 0x0021F674 [ 110] "[Microsoft][ODBC SQL Server Driver][SQL Server]Il contesto di database \ff stato sostituito con 'db3'."
SWORD 511
SWORD * 0x0021FAC4 (110)
provaodbc cb4-1678 ENTER SQLErrorW
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0
WCHAR * 0x0021F674
SWORD 511
SWORD * 0x0021FAC4
provaodbc cb4-1678 EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0 (5703)
WCHAR * 0x0021F674 [ 86] "[Microsoft][ODBC SQL Server Driver][SQL Server]Changed language setting to us_english."
SWORD 511
SWORD * 0x0021FAC4 (86)
provaodbc cb4-1678 ENTER SQLErrorW
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0
WCHAR * 0x0021F674
SWORD 511
SWORD * 0x0021FAC4
provaodbc cb4-1678 EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 009A1788
HDBC 009A1830
HSTMT 00000000
WCHAR * 0x0021FA74 (NYI)
SDWORD * 0x0021FAC0
WCHAR * 0x0021F674
SWORD 511
SWORD * 0x0021FAC4
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x009A2328
SWORD 2048
SWORD * 0x0021F50C
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 17 <SQL_DBMS_NAME>
PTR 0x009A2328 [ 40] "Microsoft SQL Server"
SWORD 2048
SWORD * 0x0021F50C (40)
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 18 <SQL_DBMS_VER>
PTR 0x009A2270
SWORD 2048
SWORD * 0x0021F0E8
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 18 <SQL_DBMS_VER>
PTR 0x009A2270 [ 20] "08.00.2039"
SWORD 2048
SWORD * 0x0021F0E8 (20)
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x009A2270
SWORD 2048
SWORD * 0x0021F0E8
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 6 <SQL_DRIVER_NAME>
PTR 0x009A2270 [ 24] "SQLSRV32.DLL"
SWORD 2048
SWORD * 0x0021F0E8 (24)
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 7 <SQL_DRIVER_VER>
PTR 0x009A2270
SWORD 2048
SWORD * 0x0021F0E8
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 7 <SQL_DRIVER_VER>
PTR 0x009A2270 [ 20] "03.85.1132"
SWORD 2048
SWORD * 0x0021F0E8 (20)
provaodbc cb4-1678 ENTER SQLGetFunctions
HDBC 009A1830
UWORD 1016
UWORD * 0x0021F504
provaodbc cb4-1678 EXIT SQLGetFunctions with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 1016
UWORD * 0x0021F504 (1)
provaodbc cb4-1678 ENTER SQLGetFunctions
HDBC 009A1830
UWORD 1020
UWORD * 0x0021F504
provaodbc cb4-1678 EXIT SQLGetFunctions with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 1020
UWORD * 0x0021F504 (1)
provaodbc cb4-1678 ENTER SQLGetFunctions
HDBC 009A1830
UWORD 58
UWORD * 0x0021F504
provaodbc cb4-1678 EXIT SQLGetFunctions with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 58
UWORD * 0x0021F504 (1)
provaodbc cb4-1678 ENTER SQLGetFunctions
HDBC 009A1830
UWORD 1021
UWORD * 0x0021F504
provaodbc cb4-1678 EXIT SQLGetFunctions with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 1021
UWORD * 0x0021F504 (1)
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 81 <SQL_GETDATA_EXTENSIONS>
PTR 0021F510
SWORD 1024
SWORD * 0x0021F508
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 81 <SQL_GETDATA_EXTENSIONS>
PTR 0021F510
SWORD 1024
SWORD * 0x0021F508 (4)
provaodbc cb4-1678 ENTER SQLGetInfoW
HDBC 009A1830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0021F510
SWORD 1024
SWORD * 0x0021F508
provaodbc cb4-1678 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS)
HDBC 009A1830
UWORD 46 <SQL_TXN_CAPABLE>
PTR 0x0021F510 (2)
SWORD 1024
SWORD * 0x0021F508 (2)
provaodbc cb4-1678 ENTER SQLSetConnectAttr
SQLHDBC 009A1830
SQLINTEGER 102 <SQL_ATTR_AUTOCOMMIT>
SQLPOINTER 0x00000000
SQLINTEGER 0
provaodbc cb4-1678 EXIT SQLSetConnectAttr with return code 0 (SQL_SUCCESS)
SQLHDBC 009A1830
SQLINTEGER 102 <SQL_ATTR_AUTOCOMMIT>
SQLPOINTER 0x00000000
SQLINTEGER 0
provaodbc cb4-1678 ENTER SQLGetConnectAttr
SQLHDBC 009A1830
SQLINTEGER 102 <SQL_ATTR_AUTOCOMMIT>
SQLPOINTER 0x0021F4E0
SQLINTEGER 4
SQLINTEGER * 0x0021F4E4
provaodbc cb4-1678 EXIT SQLGetConnectAttr with return code 0 (SQL_SUCCESS)
SQLHDBC 009A1830
SQLINTEGER 102 <SQL_ATTR_AUTOCOMMIT>
SQLPOINTER 0x0021F4E0
SQLINTEGER 4
SQLINTEGER * 0x0021F4E4 (4)
provaodbc cb4-1678 ENTER SQLAllocHandle
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 009A1830
SQLHANDLE * 00B19EEC
provaodbc cb4-1678 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS)
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 009A1830
SQLHANDLE * 0x00B19EEC ( 0x009a2270)
provaodbc cb4-1678 ENTER SQLFreeStmt
HSTMT 009A2270
UWORD 3 <SQL_RESET_PARAMS>
provaodbc cb4-1678 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
UWORD 3 <SQL_RESET_PARAMS>
provaodbc cb4-1678 ENTER SQLFreeStmt
HSTMT 009A2270
UWORD 0 <SQL_CLOSE>
provaodbc cb4-1678 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
UWORD 0 <SQL_CLOSE>
provaodbc cb4-1678 ENTER SQLPrepare
HSTMT 009A2270
UCHAR * 0x00A55C90 [ 18] "{call CursorTest}"
SDWORD 18
provaodbc cb4-1678 EXIT SQLPrepare with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
UCHAR * 0x00A55C90 [ 18] "{call CursorTest}"
SDWORD 18
provaodbc cb4-1678 ENTER SQLNumParams
HSTMT 009A2270
SWORD * 0x0021FCA8
provaodbc cb4-1678 EXIT SQLNumParams with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
SWORD * 0x0021FCA8 (0)
provaodbc cb4-1678 ENTER SQLExecute
HSTMT 009A2270
provaodbc cb4-1678 EXIT SQLExecute with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
provaodbc cb4-1678 ENTER SQLNumResultCols
HSTMT 009A2270
SWORD * 0x0021FCCC
provaodbc cb4-1678 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS)
HSTMT 009A2270
SWORD * 0x0021FCCC (0)
provaodbc cb4-1678 ENTER SQLGetStmtAttr
SQLHSTMT 009A2270
SQLINTEGER 14 <SQL_ROW_NUMBER>
SQLPOINTER 0x0021FCB4
SQLINTEGER 4
SQLINTEGER * 0x0021FCB8
provaodbc cb4-1678 EXIT SQLGetStmtAttr with return code -1 (SQL_ERROR)
SQLHSTMT 009A2270
SQLINTEGER 14 <SQL_ROW_NUMBER>
SQLPOINTER 0x0021FCB4
SQLINTEGER 4
SQLINTEGER * 0x0021FCB8
DIAG [24000] [Microsoft][Driver Manager ODBC] Stato del cursore non valido. (0)
More information about the egenix-users
mailing list