Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

OLE DB Timeout expired

86263Sep 22 2004 — edited Dec 12 2006
I have successfully established a connection between Oracle and SQL Server using Generic Connectivity via OLE DB (HSOLESQL)

I can issue select statements like

SELECT * FROM INFORMATION_SCHEMA.ROUTINES@SQLDB;

successfully. However when I issue something like

SELECT * FROM fnGetData ('1-Sep-2004','2-Sep-2004')

using DBMS_HS_PASSTHROUGH package - which works perfectly well using Generic Connectivity via ODBC (HSODBC) - I get the error

ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
[Generic Connectivity Using OLEDB_SQL]DRV_GetRows: pICommand->Execute:rc=-2147217871):Extended = [Microsoft][ODBC SQL Server Driver]Timeout expired
ORA-06512: at line 102

I have tried setting "Connection Timeout", "General Timeout" and "Command Timeout" in the connection string in the UDL file to large numbers but none seem to make any difference.

Is there any way to tell HSOLESQL to tell the OLE DB driver to increase its command timeout value?

Thanks for all replies.

Dan

P.S. fnGetData(@FromDate,@ToDate) is a function returning a table. It allows a form or parameterised views. It takes nearly a minute to return the first record and I have no control over that. Using DBMS_HS_PASSTHROUGH over an ODBC connection this works fine. It's only OLE DB that gets the timeout.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jan 9 2007
Added on Sep 22 2004
5 comments
12,037 views