Symptom
- Invalid ODBC Cursor Statement
Sybase EnterpriseConnect Data Access (ECDA)
%SYBASE%\OCS-15_0\bin>isql -S<ase_server> -U<userid> -P<pwd> -w2048 -D<ase_dbname>
1> select * from <proxy_table_mapped_to_mssql_table>
2> go
quickpass disabled, reason: text/image column
SELECT dt_logged, TEXTPTR(messagetext), messageDirection, vcmsDestMnem, clientDestMnem, vcmsOrigMnem, clientOrigMnem, vcmsRoutingkey, clientRoutingkey, taf, oif, dbIdentifier, dbmessageType, messageType, credentialMnemonic, credentialIp, credentialApplica
tion, credentialPassword, credentialUser, messageidUnit, messageidId, messageidNamespace, id FROM <mssql_dbname>.<schema>.<mssql_table>
Msg 30291, Level 19, State 0:
Server '<ecda_server>', Line 1:
Invalid ODBC Cursor Statement C91: []
Command has been aborted.
(0 rows affected)
1> - Message Iteration=1|SQLState=SL008|Native Error=0|Message=[unixODBC][Driver Manager]SQLGetData is not allowed on a forward only (non-buffered) cursor
EasySoft ODBC driver to Microsoft SQL Server (MSSQL) on HP UX reported error below with ECDA service configured with SQLOdbcCursors=odbc
type %SYBASE%\DC-15_0\servers\<ecda_server>\log\<ecda_servername>.log
. . .
TraceEntryExit 05/01/2017 09:37:06.022692 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(142)] TRACE_ENTRY_EXIT >odbcBaseResult::getData
TraceInterface 05/01/2017 09:37:06.022783 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(146)] Trace API Level ENTER odbcBaseResult():SQLGetData [760a10 | column number=3 | SQL C type=1 | length=2049]
TraceInterface 05/01/2017 09:37:06.022879 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(146)] Trace API Level EXIT odbcBaseResult():SQLGetData [SQLGetData bytes length=0] with return code -1
TraceEntryExit 05/01/2017 09:37:06.022967 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(142)] TRACE_ENTRY_EXIT <odbcBaseResult::getData
TraceEvents 05/01/2017 09:37:06.023083 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(486)] 05/01/117 09:37:06.023034 dcclets 23 NULL NULL processDataStream, getData status=-1
TraceEvents 05/01/2017 09:37:06.023207 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(486)] 05/01/117 09:37:06.023159 dcclets 23 NULL NULL ERROR:Retrieving ODBC lob column failed.
TraceEvents 05/01/2017 09:37:06.023585 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(583)] 05/01/117 09:37:06.023527 dcclets 23 NULL NULL [
[Message Iteration=1|SQLState=SL008|Native Error=0|Message=[unixODBC][Driver Manager]SQLGetData is not allowed on a forward only (non-buffered) cursor]
TraceEvents 05/01/2017 09:37:06.023835 <ecda_service> 12 sa OmniServer [smdcamsg.cpp(486)] 05/01/117 09:37:06.023785 dcclets 23 NULL NULL processDataStream,final SQLGetData status=-1
. . .
Read more...
Environment
- SAP Adaptive Server Enterprise (ASE) with proxy table
- Sybase EnterpriseConnect Data Access (ECDA) to Microsoft SQL Server (MSSQL)
Product
Sybase EnterpriseConnect Data Access all versions
Keywords
ECDA odbc ASE proxy table proxy_table create existing table text Microsoft SQL Server Msg 30291 Level 19 State 0: Server Line 1: Invalid ODBC Cursor Statement [] Command has been aborted , KBA , BC-SYB-ECD , Enterprise Connect (ECDA) , Problem
About this page
This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).Search for additional results
Visit SAP Support Portal's SAP Notes and KBA Search.