2009-07-29 12 views

Répondre

29

Non. C'est par commande et non par connexion.

Edition, mai 2013

Comme demandé dans le commentaire:

Quelques notes supplémentaires à propos de commands and execution time outs in SQL Server (DBA.SE).Et plus de choses SO: What happens to an uncommitted transaction when the connection is closed?

+0

Un lien vers toute documentation qui couvre ce serait utile. –

+1

@RichardEv: fait – gbn

3

Vous pouvez uniquement définir le délai d'attente de connexion sur la chaîne de connexion, le délai d'attente de votre requête devrait normalement être sur le délai d'attente de commande. (En supposant que nous parlons .net ici, je ne peux pas vraiment dire de votre question).

Toutefois, la commande timeout n'a aucun effet lorsque la commande est exécutée sur une connexion de contexte (une SqlConnection ouverte avec "context connection = true" dans la chaîne de connexion).

+0

merci les gars, son sens faire casse la chaîne de connexion peut être utilisé pour d'autres queris –

1

Seulement à partir du code:

namespace xxx.DsXxxTableAdapters { 
 
    partial class ZzzTableAdapter 
 
    { 
 
     public void SetTimeout(int timeout) 
 
     { 
 
      if (this.Adapter.DeleteCommand != null) { this.Adapter.DeleteCommand.CommandTimeout = timeout; } 
 
      if (this.Adapter.InsertCommand != null) { this.Adapter.InsertCommand.CommandTimeout = timeout; } 
 
      if (this.Adapter.UpdateCommand != null) { this.Adapter.UpdateCommand.CommandTimeout = timeout; } 
 
      if (this._commandCollection == null) { this.InitCommandCollection(); } 
 
      if (this._commandCollection != null) 
 
      { 
 
       foreach (System.Data.SqlClient.SqlCommand item in this._commandCollection) 
 
       { 
 
        if (item != null) 
 
        { item.CommandTimeout = timeout; } 
 
       } 
 
      } 
 
     } 
 
    } 
 
    
 
    //.... 
 
    
 
}

Questions connexes