IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Timeout en exécutant une requête vers SQL Server dans le code C#


Sujet :

C#

  1. #1
    Membre habitué Avatar de Johann7751
    Profil pro
    Analyste Programmeur Junior
    Inscrit en
    Février 2009
    Messages
    234
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Programmeur Junior

    Informations forums :
    Inscription : Février 2009
    Messages : 234
    Points : 142
    Points
    142
    Par défaut Timeout en exécutant une requête vers SQL Server dans le code C#
    Bonjour,

    J'essaye d'exécuter une requête sur mon SQL Server local, depuis mon code C#.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    using (SqlConnection)
                {
                    if (SqlConnection.State == System.Data.ConnectionState.Closed)
                        SqlConnection.Open();
                    string command = string.Format(@"INSERT INTO ArticleSearchTreeAllocation
                                                    SELECT DISTINCT ArtNr, DLNr, GenArtNr, LKZ, LfdNr, SortNr, KritNr, KritWert, Exclude, AnzSofort
                                                    FROM ArticleSearchTreeAllocation_tmp");
                        SqlCommand insertcommand = new SqlCommand(command, SqlConnection);
                        insertcommand.ExecuteNonQuery();
                }
    Voici la chaîne de connexion que j'utilise pour mon objet SqlConnection

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <add key="MyConnectionString" value="Persist Security Info=False;Trusted_Connection=True;database=MYDATABASE;server=(local);Connection Lifetime=0;Connection Timeout=7200;"/>
    Sachant que, en exécutant ma requête depuis SQL Server Mangement Studio, celle ci fonctionne.
    (Temps : 5 min, environ 15 000 000 d'inserts)

    Dans le code C#, je me prends une exception du style au bout d'une quarantaine de secondes.
    "Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."

    Pourquoi ? Dans ma chaîne de connexion, Connection Timeout=7200 soit 2h..
    Qu'est ce que j'oublie de prendre en compte ?

  2. #2
    Membre expert


    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2006
    Messages
    970
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 970
    Points : 3 304
    Points
    3 304
    Par défaut
    Bonjour,

    Dans l'objet SqlCommand, la propriété "SqlCommand" permet de spécifier la durée d'attente pour l’exécution de la commande en secondes. Par défaut c'est 30 secondes. Donc si vous savez que votre requête prend 5 minutes essayer d'augmenter ce délai
    Articles sur les technologies .NET

    Une réponse vous a aidé ? utilisez le bouton

    Votre problème est résolu ? utilisez le bouton

  3. #3
    Membre habitué Avatar de Johann7751
    Profil pro
    Analyste Programmeur Junior
    Inscrit en
    Février 2009
    Messages
    234
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Programmeur Junior

    Informations forums :
    Inscription : Février 2009
    Messages : 234
    Points : 142
    Points
    142
    Par défaut
    Merci, c'était ça.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2000] exécuter une requête distribuée sql server 2008
    Par zanoubya dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 09/09/2013, 19h22
  2. Exécuter une requête en SQL natif
    Par sebounator dans le forum Hibernate
    Réponses: 0
    Dernier message: 05/02/2010, 17h54
  3. Performance d'une requête sous SQL Server 2005
    Par Menoto dans le forum Développement
    Réponses: 4
    Dernier message: 20/03/2008, 09h58
  4. Performance d'une requête sous SQL Server 2005
    Par Menoto dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/03/2008, 09h58
  5. appelé une vue de sql server dans la page vb
    Par luciedoudou dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/04/2007, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo