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

VB 6 et antérieur Discussion :

Problème avec ADO


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 29
    Par défaut Problème avec ADO
    Salut,

    Toi qui li ce post, j'ai besoin de ton aide.
    J'effectue une requête sur un serveur à partir d'un lien ODBC pour obtenir un certains nombres de résultats. Ces résultats je désire les stocker dans une table ou un queryDef. Donc pour faire le CreateQueryDef, il n'y a pas de problèmes.
    Mon problème est que je n'arrive pas à récupérer les données. J'obtiens runtime error '3001'

    J'ai recherché sur ces types d'erreurs mais je ne trouve pas de réponse pertinente.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim Monrs As ADODB.Recordset
    Dim sqlquery As String
    Dim ws As Workspace
    Dim db As Database
    Dim str As String
     
    sqlquery = "SELECT ....;"
    Set Monrs = New ADODB.Recordset
    Set ws = DBEngine.Workspaces(0)
    Let str = "ODBC;DSN=REVIEW;UID=TEMP"
    Set db = ws.OpenDatabase("REVIEW", True, False, str)
    Monrs.Open sqlquery, db
    Monrs.Close
    db.Close
    Merci, pour votre aide !

  2. #2
    Membre éclairé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Par défaut
    salut

    essaye ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     Dim cmd As ADODB.Command
     Dim rs As ADODB.Recordset
     
     Set cmd = New ADODB.Command
     cmd.CommandText = "Employés"
     cmd.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
     "Data Source=chemin\maBDD.mdb"
     
     Set rs = New ADODB.Recordset
     rs.Open cmd, , adOpenKeyset, adLockOptimistic, adCmdTableDirect

  3. #3
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 29
    Par défaut
    Merci de ton aide moulefrite. Le problème c'est que tu récupères directement une table sur une base locale. J'utilise un lien ODBC pour effectuer une requête.

    A mon avis c'est dans la commande pour exécuter la requête que j'ai un problème, mais je ne vois pas où.

    J'ai vérifié ma requête et elle fonctionne ! Mais le code ne fonctionne pas ...

  4. #4
    Membre éclairé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Par défaut
    alors verifie les parametre a mettre lors de ton rs.open

    essaye de faire un mix avec ceux que je t'ai donné adlockoptimistic, etc....

  5. #5
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 29
    Par défaut
    C'est bon j'ai trouvé !
    Le problème venait de la commande str qui contenait l'active connection ! Mon provider était ODBC alors qu'il fallait utiliser MSDASQL. Tout fonctionne ! Merci de ton aide.Je poste le code pour ceux qui en ont besoin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim ws As Workspace
    Dim db As Database
    Dim str As String
    ...
    Set ws = DBEngine.Workspaces(0)
    Let str = "Provider=MSDASQL;DSN=REVIEW;UID=TEMP"
    ...
    Monrs.Open sqlquery, str, adOpenStatic
    ...

    Merci encore moulefrite !

  6. #6
    Membre éclairé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Par défaut
    y a pas de quoi moi aussi je bug souvent sur ce genre de probleme et c'a fait
    toujours plaisir de trouver de l'aide sur ce site alors quand je peu (meme si c'est rare) j'essaye d'en faire autant

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

Discussions similaires

  1. Problème avec ADO
    Par colfire_dev dans le forum Bases de données
    Réponses: 5
    Dernier message: 27/12/2007, 19h43
  2. [D5] Problème avec ADO
    Par iam dans le forum Bases de données
    Réponses: 1
    Dernier message: 25/08/2007, 18h51
  3. problème avec ADO
    Par fabrice001 dans le forum C++Builder
    Réponses: 7
    Dernier message: 23/08/2006, 17h23
  4. [SQL]Problème avec ADO - Order by
    Par Dnx dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 03/11/2005, 10h55
  5. Problème avec Ado, MySQL
    Par sylvain.g dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/06/2005, 10h45

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