begin process at 2010 02 10 03:06:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Base de données

 > 

SQL

 > 

Timeout requete SQL


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Timeout requete SQL

mardi 5 août 2008 à 10:21:13 | Timeout requete SQL

franck453

bonjour,

J'ai une base SQL Serveur contenant plusieurs dizaines de milliers d'enregistrements. Suivant les requêtes j'obtient une erreur "Expiration du délai".

J'ai vu qu'en mettant le paramètre CommandTimeOut =0 à la connexion cela devait résoudre mon problème.

Or, Ma connexion n'est pas 'ouverte' en permanence, et je ne sait pas où placer le paramètre CommandTimeOut !! (Dans la chaine de connexion ???)

Ci joint un exemple de ma méthode :

Dans un module1 :
Public requete As String  'contient la requete à éxécuter
Public chaines As String  'contient les paramètres de la connexion
Public rsql(1 To 15) As New ADODB.Recordset    'recordset contenant le résultat (jusqu'à 15 recordsets ouverts simultanément !)

Dans le code :
chaine = "Provider=sqloledb;Data Source=gtc-dev;Initial Catalog=alarmes;User Id=sa;Password=sa"
requete = "SELECT * FROM histo ORDER BY date DESC"
rsql(nr(3)).Open requete, chaine, adOpenDynamic, , adCmdText
       J'effectue mon traitement : par exemple :   derniere_date=rsql(nr(3))!date
rsql(nr(3)).Close

Donc où intégrer le paramètre de Timeout ?

Merci à tous, ma base ne cesse d'augmenter, et il devient urgent de résoudre ce problème, car les utilisateurs commencent à se plaindre, ce qui est normal...

Franck
mardi 2 septembre 2008 à 14:03:52 | Re : Timeout requete SQL

SebOfBorg

Membre Club
Bonjour,
Au cas ou tu n'aurais pas encore trouvé de réponse...
de mon coté j'utilise ça :
bon je me connecte a une base oracle mais il n'y a que la connectionstring a changer

----------------------------------------------------Fonction EXECUTION DE REQUETE------------------------------------------
Function Execution_Requete_RS(requete As String) As ADODB.Recordset
Form1.MousePointer = vbHourglass -- permet de mettre un sablier sur le form pour dire que ça travaille
    Set Execution_Requete_RS = New ADODB.Recordset
    On Error GoTo Gest_Err
    If Not requete = "" Then
        With Adocnx
            If .State = adStateClosed Then Communes.Connexion -- Teste avant l'execution si la connection est montée ... sinon on connecte
            If .State = adStateOpen Then
                .CommandTimeout = 2000 --Le timeout est sur la requete...
                .CursorLocation = adUseClient -- le curseur est du coté client afin de recuperer le recordcount (entre autre)
                Info "Execution de la requete : " & requete -- Info est une fonction...
                Set Execution_Requete_RS = .Execute(requete)
                Info "Nombre de lignes de la table : " & Execution_Requete_RS.RecordCount
            End If
        End With
    End If
    Accueil.MousePointer = vbNormal
    Exit Function
Gest_Err:
    Info "Erreur dans l'execution de la requete : " & requete
    Info vbTab & Err.Description
    form1.MousePointer = vbNormal --remet le curseur a la fleche
End Function
----------------------------------------------------Fonction INFO------------------------------------------
Function Info(Texte)
    Debug.Print Now(), Texte
    DoEvents
End Function
----------------------------------------------------Fonction CONNEXION--------------------------------------
Function Connexion()
    Set Adocnx = New ADODB.Connection
    If SID = "" Then Recup_Ini --Fonction permettant de recuperer les infos dans un fichier .INI
    With Adocnx
        .ConnectionString = "Provider=MSDAORA;Data Source=" + SID + ";User Id=" + NomUtilisateur + ";Password=" + MotDePasse + ";"
        .Open
        If Not .State = 1 Then
            MsgBox "Pas connecté", vbCritical, "Echec de connexion"
        End If
    End With
End Function
-------------------------------------------------------------------------------------------------------------------


Cette discussion est classée dans : sql, connexion, requete, paramètre, timeout


Répondre à ce message

Sujets en rapport avec ce message

DAO, VB et Access : requete SQL et paramètre...AIDE, SVP! [ par djelacrevette ] Salut à tous,G un pb, genre une connexion sur une base access en DAO avec VB, avec une fonction qui me fait une requete... mais qd j'essaye de passer Pb de connexion pour une requete sql simple [ par taguazou ] Bonjour,Je débute, et j'aimerais connaitre une solution à mon probleme, lors de l'execution d'un requete dont voici le code, j'ai le message d'erreur REQUETE SQL [ par bouv ] Je débute avec ACCESS et j'ai un problème de lancement de ma requete SQLEn connexion DAO, si je faisSet Requete = Bdd.OpenRecordset(sqlReq)c'est OKEn Paramètre dans requete SQL dans Dataenvironment [ par GILYON ] Bonour,J'ai un pb enve une requete paramétrée dans un DataEnvironnment.Voici la requete select nom from commune where nom in (?)Le parmètre étant une Trouver l'erreur RQT SQL [ par alias666 ] Bonjour j'ai un petit soucis sur une requete si quelqu'un peut m'aider svp je vois pas du tout...Sub Import2_QuandClic() 'Connexion à la base d Requete SQL avec parmatre externe sous etoiles [ par neimad58 ] Bonjour, j'ai un petit souci mais je doute qu'il soit très difficile à regler, et que je sois le premier à le rencontrer, juste que je n'ai pas trou Requete SQL avec *parametre* [ par neimad58 ] Bonjour, j'ai un petit souci mais je doute qu'il soit très difficile à regler, et que je sois le premier à le rencontrer, juste que je n'ai pas trou Limite d'une requete vers SQL Server [ par abraal ] Bonjour a tous Donc je vous explique clairement mon problème :J'ai un programme en VB qui doit lister toutes les valeurs d'une table présente dans une Requete SQL d'insertion [ par neimad58 ] Bonjour,je travaille avec ado sous VB pour acceder et entrer des données dans une base de donnée Access et la requète SQL que je veux lui faire execut execution de requete [ par torNADoS ] salut, voila j ai un petit probleme au niveau de l'execution des requetes.j ai deux fonctions porteusent de requetes la premiere est [code]Me.Commande


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,250 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales