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 :

[ADO] Lister les colonnes d'une table DBF


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [ADO] Lister les colonnes d'une table DBF
    Bonjour,

    Je souhaite lister les colonnes d'une table au format Dbase. pour cela je liste d'abord mes différentes tables dbf en pasant le chemin d'acces :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    If Me.Combo_base.Text = "Fichier DBF" Then
        provider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & File1.Path & ";Extended Properties=dBASE " & type_dbf
    End If
     
    connexion_externe.ConnectionString = provider
    connexion_externe.Open
     
    'On affiche ensuite la liste des tables de la base sur laquelle on s'est connecté
     
    Set RS_Table = connexion_externe.OpenSchema(adSchemaTables)
     
    While Not RS_Table.EOF
     
        Lst_table.AddItem (RS_Table.Fields(2))
        RS_Table.MoveNext
     
    Wend
    Ensuite l'utilisateur choisit la table dans la liste et je cherche à lister les différentes colonnes de ce fichier DBF. C'est la qu'il y'a un souci, impossible de lire les colonnes du fichier DBF, alors que cette même fonction marche trés bien sur une table Access. Si quelqu'un à une idée merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        Set RS_Colonne = connexion_externe.OpenSchema(adSchemaColumns)
     
        While Not RS_Colonne.EOF
     
        If RS_Colonne.Fields(2) = Me.Lst_table.List(Me.Lst_table.ListIndex) Then
     
            Me.Lst_col.AddItem (RS_Colonne.Fields(3))
     
        End If
     
        RS_Colonne.MoveNext
     
        Wend
    Il doit sans doute falloir que je passe le nom de la table DBF sur laquelle je peux lister les colonnes ?

    Si quelqu'un à une idée merci d'avance.

  2. #2
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    J'ai recement mis une source du meme type. Bon je crois qu'on a pas le meme principe, mais l'idee reste la meme. essai de voir si avec ma methode ca peut donner le resultat voulu.

    Tu trouveras ma source ici : http://developpez.net/forums/showthread.php?t=192460

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par sovo
    J'ai bien regarder ta source, j'arrive à faire la même chose avec Access à l'aide de ta méthode qui est la même que la mienne. Le probléme c'est quand je cherche à lister les colonnes de mon fichier DBF avec exactement la même ligne de commande que pour access, là ça plante ...

    Et j'arrive pas à trouver de source qui fait ça ....

    Merci de ton aide

    A+

    Pierre

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 147
    Points
    20 147
    Par défaut
    bonjour

    tu peux essayer



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    'Necessite d'activer la reference
    '"Microsoft ActiveX Data Objects x.x Library"
    '
    Dim Cn As ADODB.Connection
    Dim Rs As ADODB.Recordset
    Dim Chemin As String, Cible As String, laBase As String
    Dim i As Integer
     
    Chemin = "C:\Documents and Settings\michel\dossier"
    laBase = "societes.dbf"
     
    Set Cn = New ADODB.Connection
    Cn.Open _
    "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & _
                Chemin & ";"
     
    Cible = "SELECT * FROM " & laBase & ";"
     
    Set Rs = New Recordset
    Rs.Open Cible, Cn, adOpenKeyset, adLockOptimistic
     
    'Boucle pour recuperer le nom des colonnes
    For i = 1 To Rs.Fields.Count
    Debug.Print Rs.Fields(i - 1).Name
    Next
     
    Rs.Close
    Cn.Close

    michel

Discussions similaires

  1. [SQL-Server] Lister les colonnes d'une table
    Par tintin31000 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/10/2008, 11h33
  2. Obtenir les colonnes d'une table par ADO dans l'ordre croissant
    Par soso78 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 11/11/2007, 17h59
  3. Lister les colonnes d'une table
    Par spg40 dans le forum Administration
    Réponses: 7
    Dernier message: 30/03/2007, 15h20
  4. [MySQL] lister les occurrences d'une table
    Par youyoule dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 07/09/2005, 20h37
  5. transformer les données d'une table .dbf vers ma BD
    Par djouahra.karim1 dans le forum Bases de données
    Réponses: 2
    Dernier message: 30/11/2004, 09h54

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