Comprendre le "Connect Timeout" dans les chaînes de connexion SQL Server
On peut rencontrer un paramètre de chaîne de connexion "Connect Timeout" dans une connexion SQL Server chaîne. Son objectif et son utilisation peuvent prêter à confusion.
Qu'est-ce que « Connect Timeout » ?
Le paramètre « Connect Timeout » spécifie la durée maximale en secondes pendant laquelle la connexion tente d'établir la base de données SQL Server devrait prendre avant d'échouer. Il établit un délai d'expiration d'établissement de connexion, par opposition à un délai d'expiration d'exécution de commande.
Exemple d'utilisation
Considérez l'extrait suivant :
Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\myUser\Desktop\adoBanche\Banche\bin\Debug\banche.mdf;Integrated Security=True;Connect Timeout=30
Dans dans cet exemple, le "Connect Timeout" est réglé sur 30 secondes. Si la tentative de connexion dépasse ce délai, la connexion échouera avec une erreur de délai d'attente.
Distinction importante
Notez que le « Délai d'expiration de connexion » est différent des délais d'expiration d'exécution de commande. . Les commandes exécutées via la connexion établie ont une propriété "CommandTimeout" distincte qui peut être définie.
Définition des délais d'attente des commandes
La propriété "CommandTimeout" peut être définie pour chaque commande en utilisant l'objet SqlCommand. Cette propriété détermine le temps maximum (en secondes) pendant lequel chaque commande peut s'exécuter avant d'expirer.
Limitation
Il est essentiel de rappeler que le "Connect Timeout" ne peut pas être défini via la chaîne de connexion. Au lieu de cela, la propriété "CommandTimeout" de SqlCommand doit être utilisée pour établir des délais d'attente d'exécution des commandes.
Conclusion
Comprendre la distinction entre "Connect Timeout" et "CommandTimeout" est crucial pour une connectivité efficace aux bases de données et une gestion des erreurs dans les applications SQL Server. En définissant correctement ces délais d'attente, on peut éviter les échecs d'établissement de connexion et limiter le risque que des commandes à exécution longue bloquent ou bloquent la base de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!