Sql Server y Asp.Net Error

16/06/2005 - 01:52 por MAtías | Informe spam
Tengo una consulta que cuando llamo a la pagina me arroja el siguiente
error:

Cuando la sentencia SQL la pruebo en el analizador de consulta del
administrador corporativo tarda como 2 minutos en traer los resultados, son
bastantes.

¿¿¿¿¿Como puedo arreglar el error?????

Gracias de antemano




Error de servidor en la aplicación '/sitio'.
-
-

Valor de tiempo de espera caducado. El período de tiempo de espera caducó
antes de completar la operación o el servidor no responde.
Descripción: Excepción no controlada al ejecutar la solicitud Web actual.
Revise el seguimiento de la pila para obtener más información acerca del
error y dónde se originó en el código.

Detalles de la excepción: System.Data.SqlClient.SqlException: Valor de
tiempo de espera caducado. El período de tiempo de espera caducó antes de
completar la operación o el servidor no responde.






'String de Conección a la base de datos, está definido en el archivo config

Dim strCnx As String ConfigurationSettings.AppSettings.Item("strConeccion")

'String SQL

Dim strSql As String = "SELECT COUNT(resp_id) AS cantidad FROM respuestas
WHERE resp_descripcion LIKE '" & descripcion & "'"

strSql &= ""

'Creo la coenccion

Dim cnx As SqlConnection = New SqlConnection(strCnx)

'Hago la coneccion

Dim sdaPregunta As SqlDataAdapter = New SqlDataAdapter(strSql, cnx)

'Creo el Dataset y la relacion entre las tablas

Dim ds As DataSet = New DataSet


'Dejo los datos en un Dataset

sdaPregunta.Fill(ds, "respuestas")

cnx.Close()

Preguntas similare

Leer las respuestas

#6 MAtías
17/06/2005 - 02:34 | Informe spam
Gracias Maxí, por tu colaboración, pero encontré la solución, te la publico
por si a alguien le sirve. La solucion está en la linea que defiine el
timeout.

==

Dim strCnx As String ConfigurationSettings.AppSettings.Item("strConeccion")

Dim strSql As String = "SELECT COUNT(resp_id) AS cantidad FROM respuestas
WHERE resp_descripcion LIKE '" & descripcion & "'"

'Creo la coenccion
Dim cnx As New SqlConnection(strCnx)

Dim selectCMD As SqlCommand = New SqlCommand(strSql, cnx)
selectCMD.CommandTimeout = 180

Dim custDA As SqlDataAdapter = New SqlDataAdapter
custDA.SelectCommand = selectCMD

cnx.Open()

Dim ds As DataSet = New DataSet
custDA.Fill(ds, "respuestas")

cnx.Close()
Respuesta Responder a este mensaje
#7 Developers
17/06/2005 - 21:27 | Informe spam
Realmente esa seria una solucion Alterna, porque no envias cual es el plan
de ejecucion????? puedes ser que no este bien optimizado la consulta.

"MAtías" escribió en el mensaje
news:
Gracias Maxí, por tu colaboración, pero encontré la solución, te la


publico
por si a alguien le sirve. La solucion está en la linea que defiine el
timeout.




==>

Dim strCnx As String > ConfigurationSettings.AppSettings.Item("strConeccion")

Dim strSql As String = "SELECT COUNT(resp_id) AS cantidad FROM respuestas
WHERE resp_descripcion LIKE '" & descripcion & "'"

'Creo la coenccion
Dim cnx As New SqlConnection(strCnx)

Dim selectCMD As SqlCommand = New SqlCommand(strSql, cnx)
selectCMD.CommandTimeout = 180

Dim custDA As SqlDataAdapter = New SqlDataAdapter
custDA.SelectCommand = selectCMD

cnx.Open()

Dim ds As DataSet = New DataSet
custDA.Fill(ds, "respuestas")

cnx.Close()


Respuesta Responder a este mensaje
#8 Andres Ferreyra
22/06/2005 - 12:45 | Informe spam
Llevas razón. Envía el plan de ejecución... seguramente no tienes bien
definidos los índices de la tabla.

Por cierto; SELECT COUNT(1) es mas rápido que contar el nombre del campo.

Un saludo
Andrés

"Developers" escribió en el mensaje
news:%
Realmente esa seria una solucion Alterna, porque no envias cual es el plan
de ejecucion????? puedes ser que no este bien optimizado la consulta.

"MAtías" escribió en el mensaje
news:
Gracias Maxí, por tu colaboración, pero encontré la solución, te la


publico
por si a alguien le sirve. La solucion está en la linea que defiine el
timeout.




==>>

Dim strCnx As String >> ConfigurationSettings.AppSettings.Item("strConeccion")

Dim strSql As String = "SELECT COUNT(resp_id) AS cantidad FROM
respuestas
WHERE resp_descripcion LIKE '" & descripcion & "'"

'Creo la coenccion
Dim cnx As New SqlConnection(strCnx)

Dim selectCMD As SqlCommand = New SqlCommand(strSql, cnx)
selectCMD.CommandTimeout = 180

Dim custDA As SqlDataAdapter = New SqlDataAdapter
custDA.SelectCommand = selectCMD

cnx.Open()

Dim ds As DataSet = New DataSet
custDA.Fill(ds, "respuestas")

cnx.Close()






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida