Base de donnée

Résolu
Signaler
Messages postés
44
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
30 août 2010
-
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Statut
Membre
Dernière intervention
19 septembre 2007
-
Bonjour,

Comment puis-je faire pour savoir si le champ d'une table est une clé primaire et si c'est un string ou un integer .Il faut que je fasse la comparaison entre 2 champs pour savoir si je peux transférer l'un dans l'autre


 


merci d'avance





GIRAUD MARC

3 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
Il faut passer par adox pour cela (j'ai pas trouvé comment faire avec ado).

Regarde la classe Catalog d'adox, il me semble que c'est elle qui te permet d'accèder à ce genre d'info.
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Statut
Membre
Dernière intervention
19 septembre 2007
3
Allé un petit code te permettant d'afficher les types des champs qui t'interesse:

'Aller dans projet -> référence puis cocher ADO Ext 2.8 For DLL and Security




Dim bdd As New ADOX.Catalog
Dim table As ADOX.table
Dim col As ADOX.Column

Set bdd.ActiveConnection = Ton_objet_ADO_Connexion


MsgBox bdd.Tables("Nom_de_ta_table").Columns("Nom_de_ton_champ").Type
          
Tu as juste a remplacer ce qu'il y a en gras
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Statut
Membre
Dernière intervention
19 septembre 2007
3
Pour une recherche un peu plus complete :

Dim bdd As New ADOX.Catalog
Dim col As ADOX.Column
Set bdd.ActiveConnection = Ta_Connection

 For Each col In bdd.Tables(Ta_table).Columns
              MsgBox col.Name & " " & col.Type
 Next