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 :

[VB]Problème avec les bases de données


Sujet :

VB 6 et antérieur

  1. #1
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut [VB]Problème avec les bases de données
    Voilà, je dois créer un programme intégrant les bases de données. N'y connaissant pas grand chose en VB, je crèe mon application avec l'assistant création d'application et j'insère donc une table de ma base de données. Tout fonctionne bien et il me crèe mon application mais lorsque je veux la lancer il me dit comme erreur " Erreur de compilation : Type défini par l'utilisateur non défini "

    Voici la partie de code qu'il me souligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
      'Ceci affichera la position de l'enregistrement actif pour ce jeu d'enregistrements
      datPrimaryRS.Caption = "Record: " & CStr(datPrimaryRS.Recordset.AbsolutePosition)
    End Sub
    Voyez-vous le problème?? merci d'avance

  2. #2
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 79
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut Re: Problème avec les bases de données et VB
    Bonsoir

    Citation Envoyé par boudincweole10
    ...ByVal pRecordset As ADODB.Recordset)
    C'st là le problème.
    Mets: Pour plus d'information: http://support.microsoft.com/kb/222145/fr

  3. #3
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    et je dois mettre et ?? à quoi ça sert en fait?? merci

  4. #4
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    zut c'était le crochet b et le crochet /b

  5. #5
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    en mettant

    ADODB.Recordset20


    ça ne marche pas non plus, j'ai la mm erreur :s

  6. #6
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 79
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    Quelle version d'ADO utilises-tu?
    Les interfaces d'ADO version 2.1 et ultérieures ont été changées par rapport à la version 2.0. Il n'y a aucune solution avec cette nouvelle interface, à moins que de compiler le contrôle avec une version ancienne d'ADO.
    Private
    Sub Adodc1_WillMove(ByVal adReason As ADODB.EventReasonEnum, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset20)
    Notez bien que "20" a été ajouté à ADODB.Recordset dans l'argument de
    pRecordset.
    Concerne les évènements
    FieldChangeComplete
    MoveComplete
    RecordChangeComplete
    RecordsetChangeComplete
    WillChangeField
    WillChangeRecord
    WillChangeRecordset
    WillMove

  7. #7
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    En fait, à la base mon erreur c'est "Type défini par l'utilisateur non défini"

    Alors j'ai été dans Projet--> Références et là j'ai sélectionné Microsoft ActiveX Data Objects Library 2.0 et là il m'a mis l'erreur "La déclaration de la procédure ne correspond pas à la description de l'événement ou de la procédure du mm nom". Ensuite j'ai mis le 20 comme il est mis dans le lien que tu m'as donné et on me remet : "Type défini par l'utilisateur non défini".

    Sinon la version d'ado je v voir où pr la connaitre?

  8. #8
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    Dans Composant il y a Microsoft Ado Data Control 6.0 de coché...car j'ai installé le service pack 6. En fait je l'ai installé le sp6 car sinon je pouvais pas importer de fichier .mdb car ils provenaient de la version 2003 d'access et VB me disait que ça n'était pas reconnu...

  9. #9
    Rédacteur
    Avatar de jacma
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    612
    Détails du profil
    Informations personnelles :
    Âge : 79
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 612
    Points : 1 241
    Points
    1 241
    Par défaut
    Un petit exemple qui fonctionne tout à fait, testé et tout...

    Dans les références du projet: Microsoft ActiveX Data Objects2.8 Library.
    Dans les composants: Microsoft ADO Data Control 6.0 (SP6) (OLEDB) et Microsft DataGrid Control 6.0 (SP6) (OLEDB).
    Dans la page de propriété du contrôle ADO, onglet Général, sélectionnes le bouton radio Utiliser une chaîne de connexion.. Défini la chaîne comme suis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Developpez.com\Data\Biblio2002.mdb;Persist Security Info=False
    .
    Dans l'onglet RecordSource, défini Type de commande à 2 - adCmdTable et Nom de la table à Publishers.
    Saisis le code suivant dans la feuille de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Adodc1_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, _
            ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, _
            ByVal pRecordset As ADODB.Recordset)
     
      MsgBox Adodc1.Recordset.AbsolutePosition
     
    End Sub
    Et tu obtiens ceci:

  10. #10
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 77
    Points : 49
    Points
    49
    Par défaut
    merci bcp pr votre aide!!!

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

Discussions similaires

  1. Problème avec les bases de données
    Par sourcilpower dans le forum wxWidgets
    Réponses: 4
    Dernier message: 04/05/2012, 16h55
  2. Réponses: 7
    Dernier message: 09/04/2008, 04h13
  3. Réponses: 8
    Dernier message: 11/10/2006, 17h28
  4. problème avec ma base de donnée
    Par polace dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 22/10/2005, 22h26
  5. problème avec ma base de données
    Par pmboutteau dans le forum ASP
    Réponses: 6
    Dernier message: 25/02/2005, 12h59

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