Timeout expired!

18/10/2005 - 18:51 por madrigal | Informe spam
Hola grupo tengo una página que manda ejecutar un ejecuta un stored
procedure, que realiza actualizaciones en algunas tablas de la base de datos,
en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la página
me da el error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
[Microsoft][ODBC SQL Server Driver]Timeout expired

cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar la
ejecución y la página no espere el resultado?

Gracias de antemano por su ayuda.

Preguntas similare

Leer las respuestas

#1 madrigal
18/10/2005 - 20:11 | Informe spam
Gracias Matías, ya lo estoy intentando pero tampoco me funciona, he aquí el
código:

Dim conn,rs,strConnect,strSQL
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
strConnect = "DRIVER={SQL
Server};SERVER=server;UID=user1;PWD=user1;DATABASE=dataprod"

Server.ScriptTimeout = 360

QryStr = "set nocount on "&_
"DECLARE @RC int "&_
"DECLARE @RC2 int "&_
"EXEC @RC = [dataprod].[dbo].[CCP_ESTADO_CUENTA_GET] "&_
"EXEC @RC2 = [dataprod].[dbo].[CCP_ESTADO_CUENTA_RES_Get_Data] "&_
"SELECT CONVERT(nvarchar, @RC) 'Res1', CONVERT(nvarchar, @RC2) 'Res2' "&_
"set nocount off"

conn.Execute(QryStr)
conn.close
set conn = nothing


conn.ConnectionTimeout = 1200

conn.Open strConnect


Alguna idea de lo que puede estar mal?.

Gracias nuevamente.


"Matías Iacono" escribió:

Lo que puedes hacer es aumentar el timeout de tu objeto.

Creo que es Objeto.timeout = CantidadDeSegundos

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"madrigal" escribió en el mensaje
news:
> Hola grupo tengo una página que manda ejecutar un ejecuta un stored
> procedure, que realiza actualizaciones en algunas tablas de la base de
> datos,
> en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la
> página
> me da el error:
> Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
> [Microsoft][ODBC SQL Server Driver]Timeout expired
>
> cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar la
> ejecución y la página no espere el resultado?
>
> Gracias de antemano por su ayuda.



Respuesta Responder a este mensaje
#2 madrigal
18/10/2005 - 20:26 | Informe spam
Perdón, una disculpa, invertí bloque del código al hacer copy-paste en el
lugar equivocado. El código que estoy usando queda de la siguiente forma:

Dim conn,rs,strConnect,strSQL
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
strConnect = "DRIVER={SQL
Server};SERVER=server;UID=user1;PWD=user1;DATABASE=dataprod"

conn.ConnectionTimeout = 1200

conn.Open strConnect

Server.ScriptTimeout = 360

QryStr = "set nocount on "&_
"DECLARE @RC int "&_
"DECLARE @RC2 int "&_
"EXEC @RC = [dataprod].[dbo].[CCP_ESTADO_CUENTA_GET] "&_
"EXEC @RC2 = [dataprod].[dbo].[CCP_ESTADO_CUENTA_RES_Get_Data] "&_
"SELECT CONVERT(nvarchar, @RC) 'Res1', CONVERT(nvarchar, @RC2) 'Res2' "&_
"set nocount off"

conn.Execute(QryStr)
conn.close
set conn = nothing

Gracias.



"madrigal" escribió:

Gracias Matías, ya lo estoy intentando pero tampoco me funciona, he aquí el
código:

Dim conn,rs,strConnect,strSQL
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
strConnect = "DRIVER={SQL
Server};SERVER=server;UID=user1;PWD=user1;DATABASE=dataprod"

Server.ScriptTimeout = 360

QryStr = "set nocount on "&_
"DECLARE @RC int "&_
"DECLARE @RC2 int "&_
"EXEC @RC = [dataprod].[dbo].[CCP_ESTADO_CUENTA_GET] "&_
"EXEC @RC2 = [dataprod].[dbo].[CCP_ESTADO_CUENTA_RES_Get_Data] "&_
"SELECT CONVERT(nvarchar, @RC) 'Res1', CONVERT(nvarchar, @RC2) 'Res2' "&_
"set nocount off"

conn.Execute(QryStr)
conn.close
set conn = nothing


conn.ConnectionTimeout = 1200

conn.Open strConnect


Alguna idea de lo que puede estar mal?.

Gracias nuevamente.


"Matías Iacono" escribió:

> Lo que puedes hacer es aumentar el timeout de tu objeto.
>
> Creo que es Objeto.timeout = CantidadDeSegundos
>
> Saludos.
>
> Matías Iacono
> Microsoft MVP ASP/ASP.net - DCE3
> "madrigal" escribió en el mensaje
> news:
> > Hola grupo tengo una página que manda ejecutar un ejecuta un stored
> > procedure, que realiza actualizaciones en algunas tablas de la base de
> > datos,
> > en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la
> > página
> > me da el error:
> > Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
> > [Microsoft][ODBC SQL Server Driver]Timeout expired
> >
> > cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar la
> > ejecución y la página no espere el resultado?
> >
> > Gracias de antemano por su ayuda.
>
>
>
Respuesta Responder a este mensaje
#3 madrigal
18/10/2005 - 20:58 | Informe spam
Matías, esta sugerencia resolvió mi problema, sin embargo no logro entender
cuál es la diferencia entre

conn.CommandTimeout = 360
y
conn.ConnectionTimeout = 1200

Gracias nuevamente por tu valiosa ayuda.


"Matías Iacono" escribió:

En realidad el problema no es tu script, si no, tu conexion. Por el error
que te da, deberias modificar el tiempo del objeto conn.

Si no mal recuerdo, creo que posee el mismo metodo para manejar el timeout.

Si no estoy confundido, dentro del conn, podrias hacer algo asi:

conn.CommandTimeout = 360

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"madrigal" escribió en el mensaje
news:
> Gracias Matías, ya lo estoy intentando pero tampoco me funciona, he aquí
> el
> código:
>
> Dim conn,rs,strConnect,strSQL
> set conn = Server.CreateObject("ADODB.Connection")
> set rs = Server.CreateObject("ADODB.Recordset")
> strConnect = "DRIVER={SQL
> Server};SERVER=server;UID=user1;PWD=user1;DATABASE=dataprod"
>
> Server.ScriptTimeout = 360
>
> QryStr = "set nocount on "&_
> "DECLARE @RC int "&_
> "DECLARE @RC2 int "&_
> "EXEC @RC = [dataprod].[dbo].[CCP_ESTADO_CUENTA_GET] "&_
> "EXEC @RC2 = [dataprod].[dbo].[CCP_ESTADO_CUENTA_RES_Get_Data] "&_
> "SELECT CONVERT(nvarchar, @RC) 'Res1', CONVERT(nvarchar, @RC2) 'Res2' "&_
> "set nocount off"
>
> conn.Execute(QryStr)
> conn.close
> set conn = nothing
>
>
> conn.ConnectionTimeout = 1200
>
> conn.Open strConnect
>
>
> Alguna idea de lo que puede estar mal?.
>
> Gracias nuevamente.
>
>
> "Matías Iacono" escribió:
>
>> Lo que puedes hacer es aumentar el timeout de tu objeto.
>>
>> Creo que es Objeto.timeout = CantidadDeSegundos
>>
>> Saludos.
>>
>> Matías Iacono
>> Microsoft MVP ASP/ASP.net - DCE3
>> "madrigal" escribió en el mensaje
>> news:
>> > Hola grupo tengo una página que manda ejecutar un ejecuta un stored
>> > procedure, que realiza actualizaciones en algunas tablas de la base de
>> > datos,
>> > en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la
>> > página
>> > me da el error:
>> > Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
>> > [Microsoft][ODBC SQL Server Driver]Timeout expired
>> >
>> > cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar
>> > la
>> > ejecución y la página no espere el resultado?
>> >
>> > Gracias de antemano por su ayuda.
>>
>>
>>



Respuesta Responder a este mensaje
#4 Matías Iacono
18/10/2005 - 22:39 | Informe spam
Lo que puedes hacer es aumentar el timeout de tu objeto.

Creo que es Objeto.timeout = CantidadDeSegundos

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"madrigal" escribió en el mensaje
news:
Hola grupo tengo una página que manda ejecutar un ejecuta un stored
procedure, que realiza actualizaciones en algunas tablas de la base de
datos,
en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la
página
me da el error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
[Microsoft][ODBC SQL Server Driver]Timeout expired

cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar la
ejecución y la página no espere el resultado?

Gracias de antemano por su ayuda.
Respuesta Responder a este mensaje
#5 Matías Iacono
18/10/2005 - 23:37 | Informe spam
En realidad el problema no es tu script, si no, tu conexion. Por el error
que te da, deberias modificar el tiempo del objeto conn.

Si no mal recuerdo, creo que posee el mismo metodo para manejar el timeout.

Si no estoy confundido, dentro del conn, podrias hacer algo asi:

conn.CommandTimeout = 360

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"madrigal" escribió en el mensaje
news:
Gracias Matías, ya lo estoy intentando pero tampoco me funciona, he aquí
el
código:

Dim conn,rs,strConnect,strSQL
set conn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
strConnect = "DRIVER={SQL
Server};SERVER=server;UID=user1;PWD=user1;DATABASE=dataprod"

Server.ScriptTimeout = 360

QryStr = "set nocount on "&_
"DECLARE @RC int "&_
"DECLARE @RC2 int "&_
"EXEC @RC = [dataprod].[dbo].[CCP_ESTADO_CUENTA_GET] "&_
"EXEC @RC2 = [dataprod].[dbo].[CCP_ESTADO_CUENTA_RES_Get_Data] "&_
"SELECT CONVERT(nvarchar, @RC) 'Res1', CONVERT(nvarchar, @RC2) 'Res2' "&_
"set nocount off"

conn.Execute(QryStr)
conn.close
set conn = nothing


conn.ConnectionTimeout = 1200

conn.Open strConnect


Alguna idea de lo que puede estar mal?.

Gracias nuevamente.


"Matías Iacono" escribió:

Lo que puedes hacer es aumentar el timeout de tu objeto.

Creo que es Objeto.timeout = CantidadDeSegundos

Saludos.

Matías Iacono
Microsoft MVP ASP/ASP.net - DCE3
"madrigal" escribió en el mensaje
news:
> Hola grupo tengo una página que manda ejecutar un ejecuta un stored
> procedure, que realiza actualizaciones en algunas tablas de la base de
> datos,
> en el query analyzer tarda 2 ó 3 min, pero cuando lo ejecuto desde la
> página
> me da el error:
> Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
> [Microsoft][ODBC SQL Server Driver]Timeout expired
>
> cómo hago para que el proceso logre ejecutarse?. Hay manera de enviar
> la
> ejecución y la página no espere el resultado?
>
> Gracias de antemano por su ayuda.



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida