bonjour à tous,
je travaille sur une application c# liée à 2 bases SQL server, installée sur un ordinateur distant (enfin pour le moment sur un windows 2000 installé avec virtual PC sur la même machine, le poste client étant sous vista)
la connection s'effectue très bien, mais une de mes requètes renvoie le message "Expiration du délai d'attente. Le délai d'attente s'est écoulé avant la fin de l'opération ou le serveur ne répond pas." lors de la création d'un SQLDataReader à partir d'une SQLCommand.
la requète est la suivante :
select id_bon, ref_bon, etat_bon, date_bon from base1.bons where datediff(month, date_bon, getdate())<2 and not exists (select id_bon from base2.bons where base1.id_bon=base2.id_bon);
Elle me ramène tout les bons existants dans la base1 et pas dans la 2 et datant de moins de 2 mois.
En essayant d'isoler certaines parties de ma requète, j'ai l'impression que le problème vient de :
datediff(month, date_bon, getdate())<2
sans cette partie, le datareader se crée sans problème ![:?](https://www.developpez.net/forums/images/smilies/icon_confused.gif)
précision : quand j'exécute la requète complète directement sous Sql Server, elle met beaucoup de temps à répondre (la table bons de la base1 contient 700000 lignes et pour le moment aucune dans la base2)
merci de votre aide
Partager