OLE DB Timeout expired
86263Sep 22 2004 — edited Dec 12 2006I 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.