Hola Amigos, Tengo un Consulta en SQL Server 2000 , que demora 1 seg en ejecutarse desde el query analizer, pero al tratar de ejecutarse desde el Visual Basic a traves de un ADODB.RecordSet me sale "error en tiemo de Espera". No so todas las veces, hay momentos que si consulta a la BD, se demora y recupera la informacion pero se esta haciendo mas seguido el Error He probado con rs.open sql, con (Inclusive poniendo las opciones de cursorlocation, locktype, etc.) o asignado directamente el resultado de un objeto conexion, es decir set rs = con.execute(sql) pero sigue en el mismo problema Lo que no entiendo y recurro a ustedes es el porque de este error si el query no demora nada en ejecutarse. Saludos, y espero que me puedan ayudar.
La conección con la base es a través de TCP/IP? Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.
Asi es amigo la conexion es a traves de TCP/IP Es mas, las pruebas las realizo desde mi PC con el ANalizador de Consultas del SQL SERVER 2000, la ejecucion del query o de forma mas especifica la ejecucion del procedimiento almacenado es rapida, el conjunto de registros aparecen inmediatamente, pero al ejecutarse desdel el REcordset sucede lo que explico lineas arriba, es lento e inclusive muchas veces sale error en tiempo de espera....y no encuentro alguna solucion. Gracias por tu interes
Es difÃcil de analizar. No hay nada más rápido que el analizador de consultas en el momento de ejecutar un query, ya que la conexión es directa. El mismo query ejecutado desde un programa cualquiera naturalmente tarda más. Posiblemente a veces el SQL server tiene que recompilar la consulta, a veces se encuentra en memoria y no es necesario. De allà que a veces te tarda más y a veces menos. DeberÃa ejecutar el Profiler y buscar, cuando tarda mucho, si no hay algún bloqueo que impida que se ejecute más rápido. Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.
La ejecucion del query se realiza a traves de un Procedimiento Almacenado, donde el store se encuentra compilado y la consulta optimizada. Lo que hago es ejecutar el Store desde el Analizador de Consultas que demora menos de 1 segundo, pero cuando lo ejecuto desde el recordset demora mucho, pero mucho mas, inclusive sobrepasa el timeout de la conexion y arroja error en tiempo de espera. Definitavemnte algo esta mal y no se que es ?. salu2
Me parece que lo tienes que conversar con alguin de VB, ya que obviamente el problema no está desde el lado del SQL Server. Esto queda probado con la prueba que realizas con el Analizador de consultas. Entonces, el problema está en la conexión o en algo del VB6. Luis Martin Moderator SQL-Server-Performance.com All in Love is Fair Stevie Wonder All postings are provided “AS IS†with no warranties for accuracy.