cs_tyboo
Messages postés5Date d'inscriptionmardi 13 mars 2007StatutMembreDernière intervention 3 avril 2007
-
2 avril 2007 à 08:39
cs_tyboo
Messages postés5Date d'inscriptionmardi 13 mars 2007StatutMembreDernière intervention 3 avril 2007
-
3 avril 2007 à 14:50
Bonjour,
Je fais un logiciel sous visual basic2005, qui doit lire une base de donnée (non connue) et en ressortir les noms des tables pour les exploiter. Je passe par un driver ODBC. Mais impossible de trouver la requête du genre "SHOW TABLE" qui me permettrait d'obtenir les noms des tables.
Quelqu'un aurait la solution?
Voici le bout de code que j'utilise mais qui ne fonctionne pas du tout:
Dim connection As New OdbcConnection("DSN=Base1")
Dim command As New OdbcCommand
Dim reader As OdbcDataReader
connection.Open()
cs_tyboo
Messages postés5Date d'inscriptionmardi 13 mars 2007StatutMembreDernière intervention 3 avril 2007 3 avril 2007 à 14:50
Ayé!!
J'ai trouvé comment faire. Grace à un code un peu similaire en vb6 de Renfield
Voici un programme test qui énumére tous les noms de table de la DB Si quelqu'un d'autre est interressé:
Dim connection As New OdbcConnection("DSN=Base1")
Dim command As New OdbcCommand
Dim var As DataTable
connection.Open()
var = connection.GetSchema("Tables")
For Each element2 As DataRow In var.Rows
MessageBox.Show(element2.Item(2))
Next
connection.Close()
cs_tyboo
Messages postés5Date d'inscriptionmardi 13 mars 2007StatutMembreDernière intervention 3 avril 2007 2 avril 2007 à 10:50
Merci bien pour ton aide.
Mais le vba s'adapte mal sur vb2005.
Je n'ai pas trouvé d'équivallent à "Dim Tableau As ADOX.Table"
Je pense que l'idée de "connection.GetSchema()" est pas mal mais je ne sais pas l'exploiter. Je l'ai tourné dans tout les sens, à part "MetaDataCollections" c'est tout ce que j'obtient...
cs_tyboo
Messages postés5Date d'inscriptionmardi 13 mars 2007StatutMembreDernière intervention 3 avril 2007 3 avril 2007 à 09:26
Heu mimosa803 es tu sur de ta requete? Je vois pas trop comment on peut connaitre tous les noms de table de la DB??
Ton table_name devient un tableau contenant les différents nom de table?
Sinon Renfield peux tu m'en dire plus sur "OpenSchema" ou "GetSchema" ? Je suis surement pas loin mais impossible d'y aboutir...