2010-05-05 4 views
3

Je reçois l'erreur suivante lors de l'exécution d'une requête.sqlclient - délai de connexion ou délai de commande

*

System.Data.SqlClient.SqlException: Délai d'attente expiré.
La période d'expiration s'est écoulée avant la fin de l'opération ou le serveur ne répond pas. à System.Data.SqlClient.SqlConnection.OnError (Exception SqlException, Boolean breakConnection)

*

Est-ce un délai d'attente de connexion ou délai d'attente de commande?

TIA

Répondre

1

Ressemble à un délai d'attente de commande. Si vous avez un délai de connexion, vous verrez à partir de la trace de la pile qu'il est renvoyé d'un appel à SqlConnection.Open. Tout autre délai d'attente sera un délai d'expiration de commande.

+0

même si l'erreur se produit dans System.Data.SqlClient. * SqlConnection *? trompeur –

1

Vous devrez poster plus de code à la façon dont vous la connexion et ce que vous essayez d'exécuter. Un délai d'expiration de commande se propage à une erreur de délai d'attente sqlexception, ce qui pourrait être le cas.

Quelle est la commande ou la requête que vous essayez d'exécuter? Une fois posté, nous pouvons vous aider à l'optimiser. Vous pouvez également essayer de définir un délai d'attente pour la connexion et l'objet de commande. Augmentez le et voyez si ça aide.

+0

@JonH - la requête fonctionne si la condition doit correspondre à un ID de type int mais expire lors de l'utilisation d'une plage de dates. Donc, la connexion fonctionne mais l'erreur ne donne pas d'indice quant à ce délai. – SoftwareGeek

0

Combien de temps la requête prend-elle lorsqu'elle est exécutée à partir de SSMS?

Si rapide, alors votre problème pourrait être un interblocage.

Utilisez-vous des transactions? Partagez-vous la base de données avec d'autres applications/utilisateurs?

Plus d'informations seront très utiles.

+0

la requête s'exécute correctement dans SSMS lors de l'utilisation d'une variable de type datetime mais si je substitue directement la valeur de la date à varchar, alors il faut pour toujours la compléter. Par exemple: 1) Où updateddate> @date (fonctionne bien). 2) Où updateddate> '01/05/2010 '(prend une éternité). Quel est le besoin de convertir en date-heure? – SoftwareGeek

+0

@BhehaFry Avez-vous essayé de faire un CAST dans la requête pour lancer la chaîne en tant que datetime? c'est-à-dire Sélectionnez Col1, Col2, col3 à partir de tbl où myDate = CAST (@datestring comme datetime) Également si vous utilisez SELECT *, ne le faites pas. – callisto

Questions connexes